W naszym zespole używamy Git jako naszej kontroli źródła. Mamy kilka obszarów kodu, które są prawie niezależne, ale nakładają się na siebie. Ostatnio dyskutowaliśmy o przepływach pracy i podejściach do korzystania z kontroli źródła. Jedną skargą, która pojawia się, gdy promuję użycie przepływu pracy gałęzi funkcji, jest to, że ludzie często napotykają skomplikowane konflikty scalania, które nieprawidłowo rozwiązują. Przez skomplikowane rozumiem „nie oczywiste, jak rozwiązać”. W związku z tym aktywniej wykorzystywane są inne przepływy pracy, takie jak przepływ pracy oparty na „pull rebase”.
Jako zwolennik podejścia do gałęzi funkcji, tak naprawdę nie otrzymuję skargi. Tak, musisz aktualizować lokalne oddziały funkcji od głównego lub gdziekolwiek, ale to jedyny prawdziwy problem, jaki widzę. Myślę, że jeśli twoje połączenia są zawsze skomplikowane i mogą mieć drugorzędne skutki, to jest to bardziej problem pracy zespołowej niż problem Git.
Czy mam rację, myśląc o tym? Czy skomplikowane konflikty scalania są oznaką czegoś dobrego lub złego?