Git cz. 2 - podstawy

Cześć!

Już jakiś czas nie pojawił się tu żaden nowy post, zatem czas najwyższy to zmienić. Za chwilę dowiesz się jak zacząć pracę z gitem, jak efektywnie wykorzystać to narzędzie i jak przyłączyć się do już istniejącego projektu. Dzisiaj kolejny post z serii o gicie.

Jeśli zaczynasz swój projekt, albo chcesz dołączyć do już istniejącego musisz sobie przygotować miejsce do pracy. Z gitem zajmie Ci to... chwilę. Po prostu w wybranym folderze zainicjalizuj repozytorium wykonując

git init

Już. Właśnie zainicjalizowałeś swój projekt w gicie. Teraz wypadałoby nieco go spersonalizować, a dokładnie usunąć parę niepotrzebnych do wersjonowania plików. Dokonamy tu podziału na dwa rodzaje: pliki globalne, które będzie miał każdy programista, np. folder z uploadowanymi przez użytkownika obrazami oraz takie które są indywidualne, np. pliki tymczasowe twojego IDE. W pierwszym przypadku dokonamy wykluczenia plików poprzez dodanie ścieżki do pliku .gitignore. Jest to plik, którego modyfikacje będą wysyłane do repozytorium. Można powiedzieć, że będzie ogólnodostępny.

W przypadku plików prywatnych wykluczenia należy dokonać w pliku .git/info/exclude. Plik ten jest plikiem lokalnym i nie zostanie wysłany do repozytorium.

Ok, skoro konfigurację wykluczeń mamy już za sobą to czas na kolejny krok.

Jeśli stworzone repozytorium inicjuje jakiś projekt to w sumie nie musisz robić nic szczególnego. Po prostu jeśli zakończysz jakiś etap i będziesz chciał wysłać pliki na repozytorium wykonaj

git add .
git ci -m 'Krótki opis commita'
git push link-do-repo gałąź

Oczywiście możesz dodać konkretne pliki zastępując kropkę nazwą pliku.

Jeśli natomiast będziesz kontynuwał istniejący projekt możesz go sklonować

git clone adres-do-repo

Oczywiście musisz mieć prawo do sklonowania repozytorium. Jeśli znajduje się ono na Twoim koncie to nie ma problemu, jeśli natomiast na czyimś musisz je najpierw sforkować, a dopiero potem sklonować, korzystając ze swojego forka.

Jak zapewne zauważyłeś często wykorzystywane są adresy do repozytorium. Trochę ciężko byłoby je zapamiętać. Dlatego warto dodać sobie skrót.

git remote add nazwa-skrótu adres-do-repo

Później możesz sprawdzić stworzone skróty używając.

git remote -v

Zwykle przyjmuje się, że nazwa głównego repozytorium przyjmuje skrót origin.

Ok, wszystko poszło dobrze, zrobiłeś jakąś część projektu. Chciałbyś zobaczyć jakie pliki zostały zmienione/dodane/usunięte. Do tego służy polecenie

git status

Wyświetlone zostaną pliki, które zostaną scommitowane przy najbliższej okazji (zielone) oraz te które nie zostaną (czerwone). Aby dodać pliki do scommitowania wystarczy użyć znanego Ci już polecenia

git add .

Jeśli natomiast chcesz usunąć jakiś plik z listy przeznaczonych do scommitowania użyj wyświetlonej w statusie podpowiedzi

git reset HEAD nazwa_pliku

Jeśli chciałbyś szybko porównać jakie zmiany dokonane zostały w plikach użyj po prostu polecenia.

git diff

Zarówno w poleceniu diff jak i status możesz użyć parametru --staged, aby zobaczyć tylko te pliki, które są przeznaczone do scommitowania.

A propo commitowania. Skróconą wersję już znasz. Aby commitować wykorzystując wszystkie możliwości użyj

git commit

Zostanie wyświetlony plik, w którym możesz dodać krótki opis commita, ale także po pozostawieniu wolnej linii długi opis który zostanie potraktowany przez repozytoria jako dodatkowy.

Do usuwania plików, zamiast standardowego rm użyj

git rm nazwa_pliku

Pozwoli to jednocześnie pozbyć się plików z dysku i z repozytorium.