Moja firma korzysta z Git i stosuje osobliwy schemat rozgałęziania - praca jest wykonywana w trybie głównym, a gałęzie są zarezerwowane dla wydań. Działa to dobrze, pod warunkiem, że cała praca wykonana w iteracji trafia do gałęzi, ale jeśli pojawi się krytyczny problem z produkcją, musimy upewnić się, że praca w jakiś sposób trafi do obu gałęzi.
Ostatnio bawiliśmy się z tymi gałęziami. To był administracyjny ból głowy, zapewniający, że cała praca trafia do każdej gałęzi, a niektóre błędy, które zostały naprawione w jednej gałęzi, nie przekształcają się w master, dopóki ktoś tego nie zauważy, co jest niepokojące.
Jakiś czas temu natknąłem się na Git Flow i wydaje mi się, że byłoby to rozwiązanie naszego problemu - kodu nie przesiąka aż do wydania lub od samego początku. Jedynym haczykiem jest to, że mój trop stwierdził, że tego rodzaju rozwój był anty-wzorcem - rozwijał się wściekle przez dwa tygodnie, a następnie wydał trzy, aby rozwiązać konflikty scalania.
Nie jestem do końca pewien, czy się zgadzam, a odkąd to podniosłem, praca została wznowiona jak zwykle. Dopiero niedawno mieliśmy z tym kilka poważnych problemów.
Chciałbym wiedzieć - dlaczego taki schemat rozwoju miałby być postrzegany jako anty-wzór? Czy to naprawdę jest anty-wzór?
Odpowiedzi:
Odnosi się on głównie do części gałęzi funkcji modelu. Gałęzie funkcji zostały uznane za anty-wzorzec dawno temu, kiedy oddziały trwały miesiące, a systemy kontroli wersji nie mogły się połączyć, aby uratować im życie. Gałęzie funkcji trwające tydzień lub dwa mają znacznie mniej problemów, zwłaszcza jeśli w tym czasie ciągle się łączysz z
develop
gałęzią funkcji. Coś znacznie dłuższego niż to nadal nie jest zalecane.Nawet jeśli nie używasz gałęzi operacji git flow, pozostałe części są przydatne w zapewnieniu czystych scaleń, a zmiany są propagowane we właściwym kierunku.
źródło
Scalanie jest zabawną rzeczą - im rzadziej się to robi, tym trudniej, tym trudniej, tym bardziej ludzie będą się go bali, tym rzadziej będą to robić.
Rozwiązaniem jest albo nie zezwalaj oddziałom na zbyt duże odchylenie, albo nie używaj oddziałów.
Jeśli ludzie to zrozumieją, prawdopodobnie nie będziesz miał wielu problemów ze scaleniem, jeśli nie - być może gałęzie nie są dobrym pomysłem bez odrobiny edukacji.
źródło