Podstawy rozgałęzienia Git
Zdolność do łatwego rozgałęzienia jest jedną z najlepszych cech git. Tworzenie gałęzi w innych systemach kontroli wersji może być kosztowne pod względem wymagań dotyczących przestrzeni i przetwarzania. Git rozgałęzienie jest wydajne. Więc użytkownicy są bardziej podatni na gałęzie w git.
Rozgałęziony przepływ pracy
Załóżmy, że zacząłeś nowy projekt o nazwie MyVideogame. Ma jedną gałąź. Domyślna nazwa początkowej gałęzi w git nazywa się master. Jest to automatycznie tworzone. Utwórzmy repozytorium MyVideogame GIT.
$ mkdir myvideogame
$ CD myvideogame
$ git init
Utworzyłeś puste repozytorium GIT. Dodajmy nasz projekt.plik txt z pewnym tekstem.
$ echo „Decyzja o projekcie 1: Dodaj obrazy” >> Projektowanie.tekstDodajmy więcej zmian:
$ echo „Decyzja o projekcie 3: Test Game” >> Projektowanie.tekstJeśli sprawdzisz historię, znajdziesz:
$ git log -linia
6A09BD6 C1: Zmodyfikowany plik projektowy
5F18D89 C0: Dodano plik projektowy
Jeśli sprawdzisz status GIT i wszystkie utworzone gałęzie (za pomocą polecenia: git gałąź -a), zobaczysz:
Status $ git
Na mistrzu oddziału
Nic do popełnienia, działający katalog czysty
$ git oddział -a
* gospodarz
Obecnie masz następującą sytuację:
Zrobiłeś dwa zatwierdzenia w oddziale głównym.
Załóżmy, że w testach gry znalazłeś błędy, ale nie chcesz rozwiązać problemu w gałęzi głównej, ponieważ nie chcesz jeszcze zadzierać z oryginalnym projektem. Aby możesz utworzyć nową gałąź o nazwie Bugfix:
$ git oddział Bugfix
Teraz, jeśli sprawdzisz wszystkie gałęzie:
$ git oddział -a
naprawa błędów
* gospodarz
Teraz utworzyłeś nowy oddział o nazwie Bugfix. Sytuacja można wizualizować jako to:
Jednak gwiazda (*) obok gałęzi głównej oznacza, że nadal jesteś w mistrzu. Jeśli wprowadzisz zmiany, nadal wejdzie do gałęzi głównej. Możesz użyć polecenia kasy, aby zmienić gałęzie:
$ git kectout Bugfix
Przełączono na „Bugfix” oddziału
Możesz sprawdzić, z której gałęzi używasz za pomocą statusu lub polecenia „gałąź”:
Status $ git
Na gałąźku
Nic do popełnienia, działający katalog czysty
$ git oddział -a
* naprawa błędów
gospodarz
Teraz naprawmy błąd:
$ echo „Bug Fix 1” >> Projektowanie.tekst
$ git add -a
$ git commit -m "c2: błąd naprawiony 1"
Stworzyłeś taką sytuację:
Master Oddział nie ma zmiany C2. Możesz to łatwo zweryfikować, sprawdzając historię dwóch gałęzi.
Po pierwsze, historia gałęzi Bugfix:
Status $ git
Na gałąźku
Nic do popełnienia, działający katalog czysty
$ git log -linia
E8F615B C2: Błąd naprawiony 1
6A09BD6 C1: Zmodyfikowany plik projektowy
5F18D89 C0: Dodano plik projektowy
Następnie możesz przejść do Master Branch i sprawdzić jego historię:
$ git kectout Master
Przełączony na „mistrz” oddziału
Status $ git
Na mistrzu oddziału
Nic do popełnienia, działający katalog czysty
$ git log -linia
6A09BD6 C1: Zmodyfikowany plik projektowy
5F18D89 C0: Dodano plik projektowy
Możesz zobaczyć, jak gałąź główną nie ma zmian w oddziale Bugfix.
Zawsze możesz utworzyć nową gałąź z obecnej gałęzi, w której się znajdujesz. Załóżmy, że chcesz stworzyć inną gałąź, która będzie zawierać funkcje eksperymentalne. Możesz utworzyć gałąź z Master i dodać do niej funkcje eksperymentalne:
Status $ git
Na mistrzu oddziału
Nic do popełnienia, działający katalog czysty
$ git oddział eksperymentalny
$ git kas experimental
Przełączony na gałąź „eksperymentalną”
Status $ git
Na oddziałach eksperymentalnych
Nic do popełnienia, działający katalog czysty
$ echo „Dodawanie funkcji eksperymentu” >> projekt.tekst
$ git add -a
$ git commit -m "c3: Dodano funkcje eksperymentalne"
[Eksperymentalny 637BC20] C3: Dodano cechy eksperymentalne
1 Zmieniony plik, 1 wstawienie (+)
Jeśli sprawdzisz historię swojej oddziału eksperymentalnego, zobaczysz:
Status $ git
Na oddziałach eksperymentalnych
Nic do popełnienia, działający katalog czysty
$ git log -linia
637BC20 C3: Dodano cechy eksperymentalne
6A09BD6 C1: Zmodyfikowany plik projektowy
5F18D89 C0: Dodano plik projektowy
Zauważysz, że nie masz zatwierdzenia C2, który został utworzony w oddziale Bugfix. Ponieważ oddział eksperymentalny jest tworzony z Master Branch, nie widzi zmian Bugfix. Masz następującą sytuację:
Wniosek
Gratulacje! Nauczyłeś się rozgałęzić.
Gałęzie git są łatwe i szybkie do wykonania. To jeden z powodów popularności Git. Jeśli chcesz zostać biegłym użytkownikiem GIT, musisz stać się biegły w rozgałęzieniu git.
https: // git-scm.com/book/en/v2/git branching-basic Banching and Merging