2010-12-29 2 views
1

Мы используем схему ветвления dev-test-prod с bzr 2. Я бы хотел установить bzr-крючок на ветку prod, которая отклонит push от тестовой ветви. Глядя на документы bzr, это выглядит выполнимо, но я удивлен, что в моих поисках не появляется ни одного, кто сделал это, по крайней мере, ни с одним из ключевых слов, которые, как я думал, для поиска. Я надеюсь, что кто-то уже получил эту работу и может поделиться своим путем к успеху.Как предотвратить переход ветви в другую ветку в BZR?

Моя текущая мысль заключается в использовании крюка pre_change_branch_tip для проверки наличия файла в тестовой ветке. Если он присутствует, не выполняйте фиксацию.

Вы можете спросить, зачем тестировать файл, почему бы просто не проверить имя ветки? Потому что мне действительно нужно обработать случай, когда наши разработчики разветвили свою ветку разработки, вытащили разделяемую тестовую ветку и теперь (ошибочно) подталкивают эту тестовую ветвь к производству вместо того, чтобы подталкивать свою функциональную ветвь к производству. И кажется, что в миллиард раз легче искать файл в новой ветке, чем пытаться опросить линию отправившей ветки.

Так кто-то сделал это? видели это? или я получаю возможность отправиться в неизведанную пустыню, которая связана с развитием bzr? :)

ответ

0

ваш подход должен работать, и плагин будет довольно простым: просто поднимите исключение, если файл присутствует. (Для примера кода вы можете посмотреть плагин, который я написал, который может предотвратить фиксацию при некоторых условиях https://launchpad.net/bzr-text-checker)