Разрешить толкать несколько голов без -f? - PullRequest
1 голос
/ 24 февраля 2012

Для нашего проекта у нас есть два репозитория: Main и Automated Testing.В репозитории Testing мы допускаем несколько головок, поэтому одна из них обычно использует «hg push -f» при отправке в репозиторий Testing.Но использование «push -f» - плохая привычка, так как это можно случайно использовать и для других репозиториев.

Так что я ищу какой-то вариант конфигурации, предпочтительно на стороне репозитория, который позволяет толкать несколько головокбез использования -f - Mercurial предоставляет такую ​​опцию?

(я знаю, что могу установить хук в репозиторий, чтобы он не являлся целью принудительного пуша, но я бы хотел избавиться отнеобходимость использовать -f в целом.)

1 Ответ

1 голос
/ 08 марта 2013

Простое решение (к сожалению, необходимое для каждого клиента) состоит в том, чтобы настроить псевдоним в вашем ~/.hgrc следующим образом:

[alias]
testboardpush = push -f ssh://example.com/testboard

Затем вы можете использовать hg testboardpush, чтобы подтолкнуть ваши коммиты к автоматическому тестированию.хранилище, вместо того, чтобы впадать в дурную привычку использования push -f.

Если у вас есть несколько хранилищ с несколькими местоположениями тестовой доски, вы можете вместо этого настроить псевдоним внутри вашего файла ~/.hgrc следующим образом:

[alias]
testboardpush = push -f testboard

И затем для каждого файла .hg/hgrc репозитория HG есть строки:

[paths]
testboard = ssh://example.com/testboard

При такой настройке, набрав hg testboardpush, вы всегда будете перемещаться в правильное место для конкретного репозитория HG, который выв настоящее время работают (или не работают с ошибкой, если путь не был установлен).

К сожалению, не получается, что вы можете сделать это со стороны сервера без пользовательской версии HG;в частности, мое чтение реализации push в файле localrepo.py источников HG указывает на то, что оно безоговорочно проверяет новые заголовки, используя discovery.checkheads (и прерывает работу), если не установлен аргумент force.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...