10 Minutowy Przewodnik Po Podstawach GITa – praca na gałęziach

Nim zaczniemy omawiać polecenia przydatne przy obsłudze gałęzi (BRANCHy) to zapoznajmy się z tym terminem.

BRANCH

Wszystkie zmiany zapisywane są w repozytorium w postaci tzw. snapshotów. Taki snapshot posiada swój własny identyfikator (hash zmiany), a tworzony jest w następstwie polecenia git commit. BRANCH to nic innego jak wskaźnik do takiego snapshota.

W naszym projekcie istnieje już branch i od początku chętnie z niego korzystaliśmy, mimo, że nic o nim nie wspominałem. Była to gałąź główna (master) i to na nim ćwiczyliśmy zmiany.

Branch główny (master)

Pamiętasz fragment z odłączoną głową (HEAD) we wcześniejszym wpisie? HEAD to nic innego jak znacznik, który wskazuje, na którym branchu pracujemy. Dodajmy nową gałąź o nazwie dev poleceniem git branch dev. Samym poleceniem git branch jesteśmy w stanie podglądnąć jakie gałęzie mamy utworzone.

Utworzone gałęzie
CHECKOUT

Przełączmy się na nowo utworzony branch poleceniem git checkout dev i sprawdźmy co zawiera.

Zawartość gałęzi dev

A no proszę co za niespodzianka. To samo co gałąź główna – jak już wspomniałem znacznik HEAD jest tylko wskaźnikiem, więc poleceniem git checkout nie tworzymy kopii całego repozytorium, a tylko zmieniamy wskazanie znacznika.

Zmieńmy co nieco w naszym pliku hello.sql i zapiszmy zmiany. Z otrzymanych informacji wynika, że zmiany były nanoszone w gałęzi dev i o to nam właśnie chodziło.

Zmiany w gałęzi dev
MERGE

To koniec naszych zmian. Zrobiliśmy kawał świetnej roboty i chcemy ją dodać do gałęzi głównej (master). Potrzebujemy przepiąć się na gałąź główną poleceniem git checkout master i złączyć z dev poleceniem git merge dev. Po tych poleceniach nasze repozytorium powinno wyglądać właśnie tak:

Repozytorium po merge

Zwróć uwagę na informację o gałęziach. To co wcześniej było rozproszone na dwóch zostało scalone w jedno. Dla porządku usuńmy branch dev poleceniem git branch -D dev

Usunięcie gałęzi dev

I to na tyle w tej części programu. Dowiedzieliśmy się czym jest branch, jak go tworzyć, usuwać, jak przełączać się między branchami i jak je mergować z głównym masterem.


Co jeszcze może Cię zainteresować:


////