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