Продукт моей компании основан на использовании модулей. Это означает, что мы поставляем пять базовых модулей, а пользователи могут приобрести дополнительные.Мы используем Mercurial, к которому мы относимся относительно недавно, для контроля версий, и с тех пор, как мы выпустили 1.0 нашего продукта, управление разработкой отдельных модулей стало настоящим кошмаром.
Мы хотим иметь возможностьвыпускать незначительные обновления исправлений ошибок, не дожидаясь завершения разработки конкретного модуля, поэтому один репо для всего не работает очень хорошо.Я читал о ветвлении, но, как представляется, Полное руководство предлагает, чтобы ветвление было временным, и что объединение с ним затруднительно.
В идеале, у нас должно быть базовое репо, которое является продуктом, а затем различные репо (или ветви) с дополнительными модулями, чтобы QA мог создавать основной продукт и основные + дополнения отдельно, в то время как разработчики, работающие над ModuleA, не влияют на разработчиков, работающих над BugfixB.Я пробовал это с несколькими подпунктами, но это привело к повреждению моих репозиториев.
Стоит ли смотреть на использование именованных веток?Или закладки?
Я ищу предложения по передовым методам использования возможностей Mercurial для упрощения этого процесса.
Спасибо!