Brief: krótki opis czym jest git i podstawy podstaw użytkowania
GIT: co to jest?
GIT jest rozproszonym systemem kontroli wersji. System kontroli wersji to oprogramowanie które pozwala nam śledzić zmiany w kodzie źródłowym oraz wspomaga programistów w łączeniu zmian gdy te zmiany są dokonywane w plikach przez wiele osób w różnym czasie.
Krótka historia
Oprogramowanie to stworzył Linus Torvalds podczas pracy nad rozwojem jądra Linux. GIT jest wolnym oprogramowaniem opublikowanym na licencji GNU GPL v. 2 a jego pierwsza wersja została wydana w 2005 roku.
Git server
GIT nie wymaga aplikacji serwerowej, jednak są aplikacje które pozwalają rozszerzyć oryginalne oprogramowanie. Umożliwiają np.: korzystanie z interfejsu www, wsparcie dla zarządzania wieloma repozytoriami, kontrolę dostępu i inne. Przykładowymi implementacjami są: GitHub, BitBucket, GitLab, Bonobo Git Server i inne.
Cechy
- możliwość pracy off-line, gdzie każdy programista posiada swoją kopię lokalnie nad którą pracuje bez połączenia z siecią
- wsparcie dla istniejących protokołów: http(s), ftp, ssh
- wygodna i efektywna praca nad dużymi projektami
- każda rewizja to obraz całego projektu, nie są to zmiany między kolejnymi rewizjami
Początki z GIT
Aby rozpocząć pracę z GIT-em będziemy potrzebowali zaledwie kilka poleceń:
Inicjacja repozytorium
git init
Służy do inicjacji repozytorium w folderze w którym jesteśmy. Utworzony zostanie folder .git gdzie znajdą się wszystkie niezbędne pliki. W tej chwili jeszcze żaden plik w folderze nie jest śledzony.
Klonowanie repozytorium
git clone http://example.com/Repozytorium/repo.git
Zamiast inicjować nowe repozytorium możemy również pobrać repozytorium z sieci przy pomocy klonowania. W poleceniu tym podajemy jeszcze adres skąd ma zostać pobrane repozytorium.
Dodawanie pliku do śledzenia zmian
git add nazwapliku.cos
Aby dodać pierwszy lub kolejny plik korzystamy z powyższego polecenia. W tej chwili plik jest śledzony i zostanie dodany do następnych rewizji projektu.
Zatwierdzanie rewizji
git commit -m "message"
Tworzy kolejną rewizję. Jeżeli nie mamy ustawionych user.name oraz user.email to zostaniemy o to poproszeni przed wykonaniem rewizji. Każda rewizja zawiera informacje na temat autora rewizji dlatego też wymagane są te dane.
Przesłanie zmian na serwer
git push
Jeżeli chcemy przesłać rewizje na serwer będziemy musieli podać jeszcze nazwę użytkownika i jego hasło, oczywiście gdy już skonfigurujemy gdzie rewizja ma zostać wysłana. W przypadku klonowania repozytorium rewizja będzie domyślnie przesłana do tego repozytorium z którego pobraliśmy historię projektu.