encyklopedia.run.place

Git

Git to rozproszony system kontroli wersji (DVCS – rozproszony system kontroli wersji), który umożliwia zarządzanie zmianami w kodzie źródłowym oraz innych zbiorach plików. System został pierwotnie opracowany w 2005 roku przez Linusa Torvaldsa, twórcę Linuksa, w celu wspierania rozwoju jądra tego systemu operacyjnego.

Historia

W 2005 roku zespół deweloperów pracujący nad Linuksem potrzebował nowego narzędzia do kontroli wersji, które byłoby szybkie, skalowalne i jednocześnie niezależne od zewnętrznych serwerów. Wcześniej używano CVS oraz Subversion (SVN), które okazały się niewystarczające pod względem wydajności i elastyczności.

Linus Torvalds rozpoczął prace nad Git w kwietniu 2005 roku. Pierwsza publiczna wersja (0.99) pojawiła się w lipcu tego samego roku, a w 2006 Git został udostępniony na licencji GNU GPL v2. Od tego czasu projekt rozwija się dynamicznie, a jego kod jest utrzymywany przez społeczność open‑source.

Podstawowe pojęcia

  • Repozytorium – centralny katalog przechowujący wszystkie wersje plików oraz ich historię.
  • Commit – zapis zmian w repozytorium, zawierający opis, autora oraz znacznik czasu.
  • Branch (gałąź) – niezależna linia rozwoju, umożliwiająca równoległą pracę nad różnymi funkcjonalnościami.
  • Merge (scalanie) – operacja łącząca zmiany z różnych gałęzi.
  • Remote (zdalny) – odwołanie do repozytorium znajdującego się na innym serwerze.

Podstawowe polecenia

Poniżej przedstawiono najważniejsze komendy wykorzystywane w codziennej pracy z Gitem:

git init               # inicjalizacja nowego repozytorium
git clone <url>        # sklonowanie istniejącego repozytorium
git status             # wyświetlenie statusu zmian
git add <plik>        # przygotowanie pliku do commita
git commit -m "msg"    # zapisanie zmian z opisem
git log                # przegląd historii commitów
git branch             # lista gałęzi
git checkout <branch>  # przełączenie na inną gałąź
git merge <branch>     # scalanie gałęzi
git pull               # pobranie i scalenie zmian ze zdalnego repozytorium
git push               # wysłanie lokalnych commitów do repozytorium zdalnego
    

Zastosowania i wpływ

Git stał się standardem de‑facto w świecie oprogramowania open‑source oraz w komercyjnych projektach programistycznych. Jego zalety to:

  • Wysoka wydajność przy operacjach na dużych repozytoriach.
  • Pełna historia zmian dostępna offline – każdy użytkownik ma pełną kopię repozytorium.
  • Elastyczny model gałęziowania, co sprzyja metodologiom Agile i ciągłej integracji.

Powiązane narzędzia i platformy

Wokół Gita powstało wiele serwisów oraz dodatków, które ułatwiają współpracę i zarządzanie kodem:

  • GitHub – platforma hostingowa umożliwiająca przeglądanie, forkowanie i zgłaszanie pull requestów.
  • GitLab – rozwiązanie typu self‑hosted z wbudowanymi pipeline’ami CI/CD.
  • Bitbucket – serwis Atlassian oferujący prywatne repozytoria Git oraz Mercurial.
  • Mercurial – inny rozproszony system kontroli wersji, często porównywany z Gitem.

Licencja i rozwój

Git jest rozpowszechniany na licencji GNU GPL v2. Kod źródłowy znajduje się w publicznym repozytorium GitHub pod adresem git/git. Rozwój prowadzony jest przez licznych kontrybutorów z całego świata; najważniejsze decyzje techniczne podejmuje Linus Torvalds i grupa zarządzająca maintainerów.

Podsumowanie

Git to potężny, elastyczny i wydajny system kontroli wersji, który zrewolucjonizował sposób, w jaki programiści współtworzą oprogramowanie. Jego otwarta architektura, rozbudowane możliwości gałęziowania oraz szerokie wsparcie społeczności czynią z niego nieodzowne narzędzie w nowoczesnym cyklu życia oprogramowania.