Kontrola wersji po ludzku.

Git to historia zmian Twojej strony albo aplikacji. Wyjaśniam, jak działa, dlaczego chroni Twoje pieniądze i o co zapytać wykonawcę, zanim zacznie pracę.

DefinicjaKontrola wersji to system, który zapisuje historię zmian w plikach projektu. Najpopularniejszy jest Git. Każda zmiana ma autora, datę i opis, więc w każdej chwili widać, co się zmieniło, i można wrócić do wcześniejszej wersji.

Jak działa kontrola wersji?

Jeśli używasz Google Docs, znasz już ten pomysł. Dokument pamięta wszystkie wcześniejsze wersje: widzisz, kto co zmienił, i jednym kliknięciem wracasz do wersji sprzed tygodnia. Kontrola wersji robi to samo dla kodu strony albo aplikacji, tylko dokładniej.

Programista nie zapisuje zmian po każdym naciśnięciu klawisza. Zamyka je w porcje z krótkim opisem, na przykład „Dodany formularz rezerwacji” albo „Poprawione menu na telefonie”. Taka porcja to commit. Z commitów powstaje historia projektu, którą da się przeczytać jak dziennik budowy.

Historia zmian w Git: główna wersja i gałąź z nową funkcją start nowe menu cennik gałąź: formularz rezerwacji połączenie
Nowa funkcja powstaje na osobnej gałęzi. Do głównej wersji strony trafia dopiero wtedy, gdy jest gotowa i sprawdzona.

Dlaczego to ważne dla Ciebie, a nie tylko dla programisty?

Kontrola wersji wygląda na narzędzie dla programistów, ale najwięcej zyskuje na niej właściciel projektu.

  • Błąd da się szybko cofnąć. Jeśli po zmianie coś przestało działać, wracamy do poprzedniej wersji, zamiast szukać problemu na żywej stronie.
  • Projekt nie zależy od jednej osoby. Kod nie leży tylko na laptopie wykonawcy. Gdy zmienisz programistę, nowa osoba dostaje cały projekt razem z historią.
  • Widzisz postęp. Historia zmian pokazuje, co zostało zrobione w danym tygodniu, bez zgadywania.
  • Kod jest Twój. Repozytorium na Twoim koncie albo przekazane Tobie po zakończeniu pracy to dowód, że masz pełną kontrolę nad tym, za co zapłaciłeś.

Repozytorium, commit, gałąź: słowniczek

Repozytorium
Folder projektu razem z całą historią zmian. Zwykle trzymany w usłudze takiej jak GitHub.
Commit
Jedna zapisana zmiana z opisem, autorem i datą.
Gałąź (branch)
Osobna linia pracy, np. nad nową funkcją. Nie miesza się z działającą wersją, dopóki nie jest gotowa.
Merge
Połączenie gałęzi z główną wersją, gdy zmiana jest sprawdzona.
Pull request
Prośba o włączenie zmian, którą ktoś przegląda i zatwierdza przed połączeniem.

Git, GitHub, GitLab: czym to się różni?

Git to samo narzędzie do zapisywania historii zmian. GitHub, GitLab i Bitbucket to usługi w internecie, w których trzyma się repozytoria, przegląda zmiany i zarządza dostępami. Można to porównać do plików (Git) i dysku w chmurze, na którym leżą (GitHub).

Dla Ciebie najważniejsze jest, na czyim koncie jest repozytorium. Najbezpieczniej, gdy jest na koncie Twojej firmy, a wykonawca ma do niego dostęp, albo gdy przekazuje Ci je po zakończeniu pracy.

Czy strona na WordPressie też potrzebuje Gita?

Tak, jeśli ma własny motyw albo wtyczki pisane na zamówienie: ten kod powinien być w repozytorium. Pamiętaj jednak, że teksty i zdjęcia dodane w panelu WordPressa leżą w bazie danych, a nie w Gicie. Dlatego przy WordPressie potrzebne są też regularne kopie zapasowe bazy danych i plików. Git ich nie zastępuje.

O co zapytać wykonawcę

  • Czy projekt będzie w repozytorium Git i czy dostanę do niego dostęp?
  • Na czyim koncie będzie repozytorium i czy przekażesz mi je na koniec?
  • Czy zobaczę, co zostało zrobione w danym tygodniu?
  • Jak cofniesz zmianę, jeśli coś przestanie działać?
  • Gdzie są kopie zapasowe bazy danych i plików (przy WordPressie)?

Najczęstsze pytania

Czy muszę umieć obsługiwać Gita?

Nie. Wystarczy, że masz dostęp do repozytorium i wiesz, gdzie ono jest. Obsługą zajmuje się programista, a Ty w razie potrzeby możesz przejrzeć historię zmian w przeglądarce.

Czy Git to to samo co GitHub?

Nie. Git to narzędzie do zapisywania historii zmian, a GitHub to usługa w internecie, w której trzyma się repozytoria. Podobnie działają GitLab i Bitbucket.

Czy Git zastępuje kopie zapasowe?

Dla kodu w dużej mierze tak, bo historia jest zapisana w repozytorium w chmurze. Nie obejmuje jednak treści z bazy danych, np. wpisów dodanych w panelu WordPressa, więc te potrzebują osobnych kopii zapasowych.

Sebastian Musiał: programista i twórca stron internetowych dla firm. Robię strony firmowe, aplikacje webowe i mobilne oraz automatyzacje AI. Pracuję zdalnie z całą Polską, a na Śląsku (Katowice i okolice) także na miejscu.

Czytaj dalej

Więcej konkretów,
mniej żargonu.

Kontakt

Porozmawiajmy.

Napisz kilka zdań o swojej firmie i o tym, czego potrzebujesz. Odpowiadam w ciągu doby.

Zarezerwuj 30 min
  1. Piszesz kilka zdań
  2. Odpowiadam w 24 h
  3. Rozmawiamy 30 min