Моя компания использует Git и использует особую схему ветвления - работа выполняется в master, а ветки зарезервированы для выпусков. Это прекрасно работает, пока вся работа, выполненная в итерации, превращается в ветвь, но если возникает критическая производственная проблема, мы должны гарантировать, что работа каким-то образом попадет в обе ветви.
В последнее время мы развлекались с этими ветками. Это была административная головная боль, гарантирующая, что вся работа превращается в каждую ветку, а некоторые ошибки, которые были исправлены в одной ветке, не превращаются в master, пока кто-то не укажет на это, что касается.
Некоторое время назад я наткнулся на Git Flow , и я чувствую, что это будет решением нашей проблемы - кода, не пронизывающего весь путь до релиза, или весь путь назад. Единственный улов в том, что мое руководство заявило, что подобное развитие событий было анти-паттерном - яростно развивалось в течение двух недель, а затем потратило три на разрешение конфликтов слияния.
Я не совсем уверен, что согласен, и с тех пор, как я это поднял, работа возобновилась как обычно. Только недавно у нас были некоторые основные болевые точки с этим.
Я хотел бы знать - почему такая схема развития должна рассматриваться как анти-паттерн? Это действительно анти-шаблон?