Minha empresa está usando o Git e está usando um esquema de ramificação peculiar - o trabalho é feito no master e as ramificações são reservadas para lançamentos. Isso funciona bem, desde que todo o trabalho realizado em uma iteração chegue à ramificação, mas se surgir um problema crítico de produção, precisamos garantir que o trabalho de alguma forma chegue às duas ramificações.
Ultimamente, estamos nos divertindo um pouco com esses galhos. Tem sido uma dor de cabeça administrativa, garantindo que todo o trabalho chegue a todos os ramos, e alguns bugs que foram corrigidos em um ramo não o tornem mestre até que alguém o indique, o que é preocupante.
Eu me deparei com o Git Flow há um tempo e sinto que seria uma solução para o nosso problema - o código não percolava todo o caminho até o lançamento ou todo o caminho de volta. O único problema é que minha liderança afirmou que esse tipo de desenvolvimento era um antipadrão - desenvolvendo-se furiosamente por duas semanas e depois gastando três para resolver os conflitos de mesclagem.
Não tenho certeza absoluta de que concordo e, desde que o trouxe à tona, o trabalho foi retomado normalmente. Somente recentemente tivemos alguns pontos problemáticos com isso.
Eu gostaria de saber - por que esse tipo de esquema de desenvolvimento seria visto como um antipadrão? É realmente um anti-padrão?