У нас есть большой сайт, на котором работает CodeIgniter, который в настоящее время находится в процессе наметки лучшей настройки Mercurial, чем то, что мы имеем сейчас.Сейчас мы думаем, что с помощью следующей настройки репо мы объединим несколько продуктов в среду alpha
.Как только он будет утвержден продажами, он перейдет в uat
для одобрения клиента.
[LIVE]
|
[UAT]
|
[ALPHA]
/ | \
[PRODUCT1] [PRODUCT2] [PRODUCT3]
Наша задача - как справиться с ситуацией, когда product1
и product2
слились в alpha
иДостигнуто значение uat
, но product2
необходимо удалить из uat
, поскольку клиент обнаружил проблемы, которые необходимо решить, но product
по-прежнему необходимо перейти в ЖИВУЮ.Это проблема, потому что, исходя из нашего понимания Mercurial, он не совсем создан для того, чтобы отделить продукт или удалить конкретное дерево наборов изменений.
Есть идеи, как это можно сделать простым способом?Является ли Mercurial правильным решением или мы должны рассмотреть что-то еще?Вы сталкивались с этим сценарием, что вы делали?
Обновление
Я читал в Закладках.Если их переносить с помощью функции «тянуть / толкать», можно использовать закладки для отслеживания версий, таких как product1 v1.4.21
, чтобы контролировать, какие версии продуктов включены в эти несколько репозиториев?
Закладки не кажутся лучшим решением,потому что он по-прежнему не позволяет мне удалять наборы изменений из product2
в репозитории alpha
, оставляя только product1
в репозитории alpha
.