Git: tworzenie gałęzi
Ostatnia aktualizacja
Nowoczesny sposób na utworzenie gałęzi i przełączenie się na nią w jednym kroku to git switch -c <name>. Starsze git checkout -b <name> robi to samo i nadal wszędzie działa. git branch <name> tworzy gałąź bez przełączania się na nią. Nowa gałąź zaczyna się tam, gdzie jesteś teraz, chyba że wskażesz inny punkt startowy.
Wypróbuj te polecenia w terminalu online: prawdziwa powłoka w przeglądarce, bez żadnej instalacji.
Składnia
| Polecenie | Co robi |
|---|---|
git switch -c feature | Tworzy feature i przełącza na nią (nowocześnie) |
git checkout -b feature | Tworzy i przełącza (starszy odpowiednik) |
git branch feature | Tworzy gałąź bez przełączania |
git switch -c feature main | Tworzy feature zaczynającą się od main |
git switch -c feature <hash> | Tworzy gałąź zaczynającą się od commita |
Typowe przypadki
| Cel | Polecenie |
|---|---|
| Odgałęzić się od zdalnej gałęzi | git switch -c feature origin/feature |
| Wypchnąć nową gałąź i ustawić upstream | git push -u origin feature |
| Utworzyć gałąź, na którą przełączysz się później | git branch feature |
Najczęstsze pytania o tworzenie gałęzi
Jak utworzyć gałąź i przełączyć się na nią jednym poleceniem?
Uruchom
git switch -c <name> (nowoczesny Git) albo równoważne git checkout -b <name>. Oba tworzą nową gałąź od bieżącego commita i od razu się na nią przełączają, więc możesz od razu na niej pracować.Czym różni się git switch -c od git checkout -b?
Robią to samo: tworzą gałąź i przełączają się na nią.
git switch to nowsze, bardziej wyspecjalizowane polecenie, wprowadzone po to, żeby oddzielić przełączanie gałęzi od wielu innych zastosowań git checkout. git checkout -b jest starsze, ale nadal w pełni wspierane; używaj tego, które woli twój zespół.Jak utworzyć gałąź od innej gałęzi albo konkretnego commita?
Podaj punkt startowy jako ostatni argument:
git switch -c feature main odgałęzia się od main, a git switch -c feature <hash> od konkretnego commita. Bez punktu startowego gałąź powstaje od bieżącego HEAD.Jak wypchnąć nową gałąź do repozytorium zdalnego?
Po utworzeniu jej lokalnie uruchom
git push -u origin <name>. -u ustawia upstream, więc późniejsze git push i git pull na tej gałęzi nie wymagają argumentów. Gałąź nie istnieje w repozytorium zdalnym, dopóki jej nie wypchniesz.Czy mogę to przećwiczyć online?
Tak. Otwórz terminal online i uruchom te polecenia w prawdziwej powłoce w przeglądarce, bez żadnej instalacji. Darmowy interaktywny kurs Git w Coddy też od początku do końca omawia pracę z gałęziami.