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?