Praca na wielu gałęziach jednocześnie w jednym repozytorium

W idealnym świecie każdy programista powinien być skupiony na jednym zadaniu lub historii, bez konieczności przełączania się między różnymi kontekstami. Nie oszukujmy się, w dzisiejszych czasach to rzadkość. Na szczęście git ma w swoim arsenale doskonałe narzędzie, które pozwala programistom pracować na wielu gałęziach jednocześnie, bez przechodzenia tam iz powrotem. Instrumentem, o którym mowa, jest git worktree.
Wymagania:
Aby uruchomić drzewo robocze, potrzebujesz zainicjowanego repozytorium, opcjonalnie z wieloma gałęziami.

Rozważmy na przykład repozytorium z trzema gałęziami. list-users-API
, gałąź funkcji, która jest bieżącą aktywną gałęzią, main
gałąź i user-unable-to-edit-content
, dodatkowa gałąź błędu. Możliwy scenariusz jest taki, że gałąź błędu nie przeszła przeglądu kodu i wymagane są dalsze zmiany. Od tego miejsca możemy przejść na kilka sposobów:
- Schowaj wszystkie nasze postępy i przejdź do gałęzi błędów, aby zastosować niezbędne zmiany.
- Sklonuj repozytorium do innego folderu i rozwiąż problem bez konieczności przechowywania, ale poświęć na ten proces odpowiednią ilość czasu.
- Trzecie i ostatnie podejście polega na użyciu git worktree, zachowując nasze obecne postępy w gałęzi funkcji i całkowicie unikając przełączania.
Realizacja:
Aby rozpocząć, użyj następującego polecenia, aby zainicjować drzewo robocze :
$ git worktree add <path> [<commit-ish>]

Jeśli użyjesz git branch
teraz, zobaczysz +
symbol poprzedzający nazwę oddziału. Aby rozpocząć korzystanie z worktree, wystarczy otworzyć nowy katalog w repozytorium z wybranym przez nas IDE. Teraz możemy wprowadzać zmiany do gałęzi błędów wraz z rozwojem nowej funkcji. Po zakończeniu zmian możemy usunąć drzewo robocze, używając:
$ git worktree remove <worktree>
Git worktree to poręczne narzędzie, które zwiększa wszechstronność i oszczędza znaczną ilość czasu. Umożliwia pracę na dwóch lub więcej gałęziach bez konieczności przechowywania lub zatwierdzania niedokończonego kodu. Mam nadzieję, że ten artykuł był pomocny i zwiększy Twoją produktywność. Prosimy o wszelkie opinie, które uznasz za warte podzielenia się w komentarzach!