2012-04-18 94 views
1

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

回答

2

这是一个pre-<command>挂钩(带连字符)用于每个命令。请注意,它与任何可能没有连字符的钩子截然不同,如precommit

因此,你可以这样做:

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

调用:

/usr/bin/notify_jira.sh PROJ-415 

当您运行:

hg bookmark PROJ-415 

上通用pre-<command>(和post-<command>)挂钩的全部细节可以找到hgrc手册页。

它看起来像​​挂钩可能会做你想做的,但pre-bookmark(或更好,post-bookmark)可能更直接。

+0

“后分支”是我所需要的。谢谢! – aztek 2012-04-19 12:19:22

+0

错误,是的,我现在看到你说分支不是书签。 (也就是说,对于每个bug的工作,请考虑使用书签而不是分支):http://mercurial.selenic.com/wiki/StandardBranching#Don.27t_treat_branch_names_as_disposable – 2012-04-19 17:42:49