Наш СКМ - это Subversion.И я не знаю, как справиться с этим сценарием.
Допустим, у меня есть следующие ветви:
- РАЗРАБОТКА (магистраль)
- QA
- ПРОИЗВОДСТВО
В багажнике у нас есть следующие функции (F):
F1 и F2 готовы к тестированию в среде QA, поэтому изменения, соответствующие этим функциям, объединяются в ветвь QA.QA:
Но что, если менеджеры захотят выпустить F1, потому что QA уже завершила тестирование по требованию F1, но это не такдля F2.
Это означало бы, что мне нужно будет объединить только изменения, соответствующие F1, в ветку PRODUCTION, но это также будет означать, что этот новый результат не будет таким же, как те, кто уже тестировал QA, потому чтоПРОИЗВОДСТВЕННАЯ ветвь будет иметь только требование F1.Я не могу гарантировать, что он будет работать, и мне кажется, что этот новый объединенный код поступает в производство без всякого тестирования.
Это может привести к различным проблемам, например: - Что, если существует какая-то зависимость междуF1 и F2 (они не должны выпускаться самостоятельно) - вы никогда не будете знать наверняка, будет ли работать новый код, потому что не было среды для тестирования этого нового объединенного кода.
Как бы вырешить это?
Спасибо и простите за мой английский.