GIT – komendy

Sprawdzenie wersji, instalacji Git

git –version
git -v

Wprowadzenie danych użytkownika

git config –global user.name „Agnieszka Trefler”
git config –global user.email hello@webscene.pl

dane te będą dołączone do każdego commita który wykonasz.

Sprawdzenie czy wprowadzone dane są zapisane

git config –list
git config user.name
git config user.email

lub przez otwarcie pliku (jeśli wiesz gdzie się znajduje) poleceniem cat ~/ .gitconfig

po wpisaniu git config otrzymasz wykaz wszystkich poleceń

Sprawdzenie statusu projektu

git status
tu dowiemy się na jakim branchu jesteśmy, jakie są commity i jakie pliki są obserwowane, czy sa zmiany do zapisania/s-commitowania

Dodanie plików do obserwacji

git add [file name] – konkretny plik, git add README.md
git add . – wszystkie pliki w katalogu
git add '*.sass’ – wszystkie pliki z rozszerzeniem .sass

Zapisanie zawartości obserwowanych plików w historii

git commit
git commit -m 'init’ – zapisanie kopi z adnotacją 'init’

Flagi

-m – message – wiadomość, treść powinna jednoznacznie określać, co zostało zrobione, być krótka ale konkretna, napisana w języku angielskim
z wykorzystaniem czasu teraźniejszego

Przegląd historii commitów

git log –oneline

Identyfikator commit

7 znakowy kod służący za identyfikator commita, inaczej id, pozwala na bezpośrednie odwołanie się do niego, dzięki czemu możemy wczytać stan plików z tego momentu lub cofnąć zmiany.

HEAD

HEAD -> main
Sygnalizuje na jakim branchu / gałęzi jesteśmy.

Cofnięcie zmian w kodzie

git revert –no-commit id – podajemy id commita od którego chcemy wycofać zmiany, git revert –no-commit a17ec87

konflikty

Pojawiają się zazwyczaj gdy parę osób pracuje nad tym samym plikiem, wtedy należy manualnie zatwierdzić które zmiany są poprawne a które nie zostaną wprowadzone.

Wykluczenie pliku lub katalogu

W katalogu głównym projektu tworzymy plik .gitignore i wprowadzamy reguły pozwalające na ignorowanie wybranych plików lub katalogów

  • git –version
  • git init – inicjalizacja Git w projekcie, utworzenie katalogu .git
  • git clone
    • git clone –help
    • git clone adres . – polecenie z kropką na końcu – utworzenie kopii w bieżącym folderze
    • git clone adres – bez kropki na końcu – utworzenie kopii w podfolderze
    • git clone -b <branch name>
      • git clone -b feature/version-3.0 ssh://git@git…
  • git add
    • git add –help
    • git add -A / git add –all
    • git add .
  • git branch
    • git branch –help
    • git branch -a – listuje list branchy
  • git config
    • git config –help
    • git config -l – wyświetla ustawienia parametrów pracy
    • git config –global – w Window7 zapisuje zmienne konfiguracyjne w pliku C:/User/username/.gitconfig
    • git config –global user.name „Name”
    • git config –global user.email hello@webscene.pl
    • git config user.name „Name” – zapisanie ustawień w repozytorium w którym wprowadzono komendę
    • git config –list – wykaz zapisanych ustawień
  • git help
    • git help add
    • git help branch
    • git help clone
  • git status
  • git shortlog
    • git shortlog -s -n – uczestnicy projektu
    • git shortlog – s -n | wc -l

 

  • git remote  – sprawdzenie czy nie ma zdalnego repozytorium w projekcie
  • git remote -v – listuje adres (fetch) i (push)
  • git ls-remote – listuje listę
  • git remote add origin <url repository> – dodanie repozytorium do remote

 

  • git rebase –

zakomitowanie zmian nie na tym branch co trzeba

  1. git reset HEAD- –soft – cofamy ostatni zrobiony commit,
  2. git stash,
  3. wejście na poprawny branch i git stash apply,
  4. rozwiązujemy ewentualne konflikty
  5. git add -A
  6. git commit –amend
  7. git push –force
  8. git checkout feature/new-menu
  9. git rebase master – bierze koncówkę branch feature.. i doczepia i doczepia do ostatniego commita na masterze – tylko podczas indywidualnej pracy bo zmienia to historie

 

zmiana danych autora:

  1. git config –global –edit
  2. it commit –amend –reset-author

 

 

  • git log – sprawdzanie zmian wprowadzonych w repo
    • –pretty – formatowanie i jego wartości:
      • oneline – id, opis
      • short – id, opis, autor
      • medium – id, opis, autor, data rewizji
      • full – id, opis, autor, osoba dołączająca rewizję do projektu
      • fuller – id, opis, autor, osoba dołączajaca rewizję do projektu, data wykonania rewizji, data dołączenia rewizji
      • email – podstawowe info w formacie email
      • raw – info powiązań rewizji (parent, tree)
      • format – formatowane określone przez użytkownika
    • –abbrev-commit –abbrev=6 – skrócenie skrótów SHA-1
    • filtracja
      • -n – liczba rewizji, -6 – sześć ostatnich rewizji
      • –since=”yyyy-mm-dd” – począytkowa data
      • –until=”yyyy-mm-dd” – końcowa data
      • –author=name – rewizje konkretnej osoby
    • git log –pretty=oneline –since=”2012-06-01″ –until=”2-12-06-08″ | wc -l
    • git log – 66 –author=dave

 

  • git checkout
    • git checkout -f – przywrócenie stanu plików z zachowaniem historii zmian do stanu detached HEAD
    • git checkout -f SHA-1 – przywrócenie stanu plików ze wskazanej rewizji z zachowaniem historii zmian

 

  • git reset –hard / git reset –hart HEAD – przywrócenie stanu ostatniej rewizji
  • git reset –hard SHA-1 – przywrócenie stanu ze wskazanej rewizji, usuwa historię późnijeszych zmian i rewizji

 

git add -A + git commit -m „comment”

git add . + git commit -a -m „comment”

 

 

  • repozytorium – repository – katalog z projektem objęty kontrola GITa
  • commit – operacja zatwierdzenia zmian
  • rewizja – commit, revision – zapisanie zatwierdzonych zmian, zawiera:
    • id rewizji
    • data, godzina wykonania
    • id poprzednich rewizji
    • info o modyfikacjach
  • obszar roboczy – working area, working directory – cała zawartość projektu poza folderem .git
  • snapshot – bieżący stan wszytskich plików w folderze roboczym

 

git shortlog -s -n | wc -l

find .  -type f -print | grep -v -E '/\.git/’ | wc -l

git log –pretty=oneline –since=”2012-06-01″ –until=”2-12-06-08″ | wc -l

 

polecanie linuxowe:

  • q – wyjście z polecenia

 

polecenia konsoli:

  • mkdir name

 

 

PRACA GRUPOWA

udostępnienie własnych rewizji innym uczestnikom projektu.

 

 

na serwerze współdzielone repozytorium

każdy posiada lokalna kopię repozytorium na której pracuje, zatwierdzając zmiany commit i wysyłając je na serwer push, po wysłaniu zmiana staje się dostępna na serwerze

sprawdzenie różnic pomiędzy dwoma dowolnymi rewizjami – ?

  1. pobranie aktualnego stanu repozytorium z serwera do lokalnego repozytorium – git pull
  2. zatwierdzanie zmian w lokalnym repozytorium – git commit
  3. wysłanie lokalnego repozytorium na serwer – git push

zmodyfikowanie tej samej liniki kodu przez 2 użytkowników powoduje zatrzymanie przesyłania danych z lub na serwer. Należy usunąć konflikt inastępnie commit, pull, push

Ciekawe artykuły

Hope this helps and happy coding :)

Zobacz jeszcze

Nice form - stylizacja

Wartość none dodana do pól formularza usuwa natywne formatowanie przeglądarki i pozwala na swobodne dodanie własnych styli dla wybranych elementów. -webkit-appearance:...

dodanie własnych rozmiarów obrazka

dodanie własnych rozmiarów obrazka do listy add media ustawiamy w functions.php //added all registered sizes img add_filter( 'image_size_names_choose', 'ml_custom_image_choose' ); function...