如何为“hg branch”设置钩子?

时间:2012-04-18 21:39:11

标签: mercurial branch hook

我想编写一个钩子,每次运行hg branch branch_name时执行一些操作(例如,为JIRA票证设置“进行中”状态),但我找不到在分支期间运行的任何内容。我有办法吗?

1 个答案:

答案 0 :(得分:2)

每个命令都是pre-<command>挂钩(带连字符)。请注意,它与任何可能没有连字符的钩子不同,sush为precommit

因此你可以这样做:

[hooks]
pre-bookmark = /usr/bin/notify_jira.sh ${HG_ARGS#bookmark }

调用:

/usr/bin/notify_jira.sh PROJ-415

当你跑步时:

hg bookmark PROJ-415

可以在hgrc手册页上找到有关通用pre-<command>(和post-<command>)挂钩的完整详细信息。

看起来pushkey挂钩可能会执行您想要的操作,但pre-bookmark(或更好,post-bookmark)可能更直接。