коммит-скрипт и, следовательно, каждый репозиторий может поддерживать свой собственный коммит-скрипт.
аюсь создать хук Mercurial, который запускается, когда коммиты помещаются в главный репозиторий. Я создал скрипт Python, как показано ниже:
# commit.py from mercurial import ui, hg from mercurial.i18n import gettext as _ def getV1ID(ui, repo, **kwargs): ui.write("The hook works!!!") v1id = ui.prompt('Enter the VersionOne ID') ui.write('VersionOne ID: '+v1id)
Для каждой ветви этоcommit.py
дублируется, так как содержит механизмы, которые должны быть запущены, прежде чем код будет помещен в главный репозиторий. Толчок должен быть успешным, только если эти механизмы предварительного толчка пройдут. Пользователи могут изменить свой локальный commit.py так, чтобы они выполняли только подмножество этих предварительных операций в зависимости от проекта, над которым они работают, и каждый человек мог работать над несколькими проектами одновременно. И так,commit.py
не может быть глобальным скриптом Python, который может находиться в.hg
папка.
Чтобы сделать Mercurial запустить местныйcommit.py
В свой файл mercurial.ini (в C: \ Users \ Имя пользователя \ mercurial.ini) я добавил следующее утверждение:
[hooks] prechangegroup = python:./commit.py:getV1ID
Скрипт Python запускается, если я помещаю его внутрь.hg
папка, но не когда я делаю это. Может ли кто-нибудь помочь мне пролить свет на этот вопрос? Большое спасибо.