Моя команда разработчиков долгое время работала с подрывной деятельностью. Способ управления стволом и ветвями выглядит следующим образом:
-
Мы (почти) всегда освобождаемся от туловища
-
Каждый выпуск получает свою собственную ветку.
-
Когда релиз готов к QA, мы объединяем ветку обратно в магистраль и создаем новую ветку для следующей версии.
-
Разработчики работают либо с магистралью, либо с веткой, но нет ветвей, специфичных для разработчика.
В последнее время у нас были некоторые сеансы слияния кошмаров, частично из-за некоторых серьезных изменений в приложении. Они не всегда идут гладко и иногда появляются всплывающие окна во время QA, где подрывная деятельность не сливалась совершенно правильно.
Одним из решений может быть объединение изменений в соединительную линию в ветки выпуска на регулярной основе, скажем еженедельно, для обеспечения того, чтобы самые последние изменения соединительных линий были в ветке. Конфликты затем могут быть исправлены ближе к реальному времени.
Каков ваш опыт в этой проблеме? Существует ли стандартная передовая практика? Кроме того, есть ли у вас хороший способ отслеживать, какие изменения были объединены в филиал (достойные комментарии в подрывной деятельности, вероятно, могут справиться с этим).