Боюсь, для этого нет встроенных возможностей отладки. Что делать при написании крючка является установка двух локальных репозиториев:
$ hg init repo
$ hg clone repo clone
, а затем настроить changegroup
крюк в repo
. Теперь перейдите в clone
и сделать
$ echo a > a
$ hg add a
$ hg commit -m 'a file'
для установки clone
. Каждый раз, когда я хочу, чтобы проверить крюк, я бегу
$ hg push; hg -R ../repo rollback
внутри clone
. Я сохраняю это в истории моей командной строки, чтобы я мог просто нажать ↑ + Вернулся, чтобы выполнить его снова и снова. hg rollback
- это ключ: эффективно отменяет hg push
, чтобы я мог повторять его снова и снова.
Разумеется, вам необходимо отрегулировать это по мере необходимости для вашего крючка. Если крючок проверяет имя коммиттера, используйте hg commit -u someone
, чтобы установить это при необходимости. Если в группе изменений требуется более одного набора изменений, тогда совершите два или более коммитов перед нажатием - откат позаботится об удалении всех нажатых наборов изменений. Если крючок находится в ведении hgweb
, а затем запустить
$ hg serve --config 'web.push_ssl=no' --config 'web.allow_push=*'
в одном терминале, чтобы служить repo
в то время как вы нажимаете на него в другом терминале.
Спасибо, это упрощает то, как я собирался об этом несколькими способами! :) –