Git – Branch part 2

Poprzednio dowiedzieliśmy się, czym są gałęzie. Teraz pokaże, jak usunąć istniejącą gałąź oraz jak zmienić nazwę gałęzi. Zapraszam 🙂

Szybki wstęp

Na potrzeby tego wpisu utwórzmy sobie repozytorium potrzebne do zrozumienia zagadnienia.

  • Utwórzmy pięć rewizji
  • Utwórzmy branch na trzeciej rewizji i nadajmy mu nazwę test1
  • Utwórzmy branch o nazwie test2 na tej samej rewizji co master
  • Przejdźmy na nowy branch test2
  • Dodajmy rewizje na branch test2

Przykład:

Tak to wygląda na obrazku:

Usuwanie gałęzi

Do usuwania gałęzi git udostępnia nam dwa polecenia.

  • git branch -d nazwa-galezi
  • git branch -D nazwa-galezi

git branch -d nazwa-galezi

Polecenie git branch -d nazwa-galezi usunie gałąź pod warunkiem, że nie znajdujemy się na tej gałęzi oraz jest ona zawarta w gałęzi bieżącej. W naszym przypadku jest to gałąź test1. Jest ona zawarta w gałęzi master, inaczej mówiąc, gałąź master posiada te same rewizje, co gałąź test1, dlatego są one zawarte, spójne. Wydanie polecenia git branch -d nazwa-galezi w tym przypadku przebiegnie pomyślnie.

git branch -D nazwa-galezi

Natomiast polecenie git branch -D nazwa-galezi usunie gałąź pod warunkiem, że nie znajdujemy się na tej gałęzi oraz jest ona poza gałęzią bieżącą i ma rewizje inne niż gałąź bieżąca. W naszym przypadku jest to gałąź test2. Jest ona niezawarta w gałęzi master, inaczej mówiąc, gałąź master różni się rewizjami między gałęzią test2, dlatego są one niezwarte, niespójne. Wydanie polecenia git branch -d nazwa-galezi w tym przypadku wywoła błąd.

Git dba o nas i chcę się upewnić, że mimo różnic między gałęziami, chcemy świadomie usunąć gałąź z danymi, które nie zawierają się w gałęzi bieżącej, czyli master. Inaczej mówiąc, git pyta nas, czy jesteśmy pewni tego, że usuniemy gałąź z danymi, które nie znajdują się w gałęzi bieżącej(master).
Aby 'pokazać’ gitowi, że świadomie chcemy usunąć gałąź i znamy tego konsekwencje, wydajemy polecenie: git branch -D test2

Zmiana nazwy gałęzi

  • git branch -m staraNazwa nowaNazwa
  • git branch -M staraNazwa nowaNazwa

Aby zmienić nazwę gałęzi, należy wydać polecenie git branch -m staraNazwa nowaNazwa. Posłużmy się repo z początku posta.

Tak wygląda nasze repo a teraz zmienimy nazwę gałęzi test1 na NewBranch01

A co jeżeli, chcemy zmienić nazwę gałęzi, na nazwę, która już istnieje?

Git informuje nas, że istnieje już taka nazwa gałęzi. Jeżeli, coś nas podkusi, aby jednak zmienić nazwę gałęzi na już istniejącą nazwę, możemy to zrobić za pomocą polecenia:
git branch -M staraNazwa nowaNazwa. Polecenie spowoduje usunięcie gałęzi nowaNazwa oraz zmianę nazwy staraNazwa na nowaNazwa. Przykład

Wykonajmy polecenie: git branch -M test2 NewBranch01 jak myślisz? Jaki będzie wynik?

Ta-daaaaam:

Stara nazwa gałęzi czyli NewBranch01 z rewizją B została usunięta. Gałąź test2 została przekształcona w gałąź o nazwie NewBranch01 z rewizją C

Podsumowanie

Jak widać usuwanie gałęzi oraz zmienianie nazwy gałęzi jest proste, mało tego git troszczy się o naszą pracę, stosując odpowiednie komunikaty, żebyśmy nie narobili sobie szkody. Podstawy przygody z gałęziami mamy już za sobą. Teraz przyjdzie czas na wcześniej wspomniane słowo merge, ale o tym już w następnym wpisie 🙂

 

 

Pozdro 🙂

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*