W jakich okolicznościach warto tworzyć w git nowe branche?

0

Hej,

Z gitem pracuje od niedawna. Bardzo podoba mi się ten system kontroli, ale w przypadku pracy samemu nad projektem to nie czuje możliwości związanych branchami.

Wiem, że branch pozwala mi realizować osobny feature zdala od gałęzi develop, a później ją zmergować, gdy uznam, że kod jest w porządku i nadaje się do współdzielenia w gałęzi develop. Przyznam, że to rozwiązanie podoba mi się w sytuacji, gdybym pracował nad kodem z kilkoma osobami. U mnie sprowadzało się to do tego, że robiłem branch, wkładałem do niego parę commitów (czasem 1 albo 2) i mergowałem to z develop, słowem marnowałem czas na tworzenie i usuwanie skończonych gałęzi. Teraz to zamiast robić nowe gałęzie to wolę niepewny kod trzymać lokalnie, a gdy jest okej to pushuje bez potrzeby tworzenia dodatkowych gałęzi.

Inny przykład jaki mógłbym wykorzystać branche w git to prowadzenie równoległej praca nad dwoma funkcjonalnościami - przyznam, bardzo rzadko taka sytuacja mi się pojawia. Chyba tylko raz miałem okazje tego w ten sposób użyć :/

Ewentualne podejście to utrzymywanie kilku różnych wersji aplikacji, ale w tej chwili ta opcja najmniej interesuje.

Jak bardzo branche się wam przydają i czy waszym zdaniem źle robię sprowadzając pracę tylko i wyłącznie do gałęzi develop.

0

Jeżeli pracujesz samodzielnie na kodzie to tworzenie nowych gałęzi też ma sens. Po pierwsze istnieje zawsze gałąź "zawsze stabilna" oraz gałąź "zawsze aktualna". Pozwala to osobom z zewnątrz dość szybko zorientować się jaki jest stan kodu.
Po drugie, IMO ważniejsze, systemy kontroli wersji powstały nie tylko po to by ułatwiać współpracę, ale przede wszystkim w celu zabezpieczenia kolejnych wersji kodu. W tym zabezpieczenia go na wypadek awarii. Trzymanie zmian lokalnie i nie pushowanie ich to proszenie się o utratę swojej pracy w wyniku awarii. Co prawda git jest systemem rozproszonym i nie ma tu "pojedynczego punktu zwały", ale tym bardziej trzeba w nim dbać o odpowiednie zabezpieczenie swojej pracy na wypadek uszkodzenia maszyny.
Po trzecie dużo zależy od twojego stylu pracy. Jak jesteś przyzwyczajony do tworzenia branch per feature to ok. Jak ci to przeszkadza to też ok. Istotne staje się to w momencie gdy współpracujesz z innymi ludźmi.
Po czwarte czasami trzeba "zrobić coś na boku" i praca nad wieloma zadaniami na raz w ramach jednej gałęzi choć możliwa dzięki stashowaniu jest upierdliwa. Szczególnie gdy to "coś na boku" to jakiś patch.

1 użytkowników online, w tym zalogowanych: 0, gości: 1