如何从Mercurial输入或变更集h访问提交消息

2024-09-29 17:17:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我想写一个钩子让Mercurial做以下事情,一个正在挣扎着走的人:

  • 在中央回购上运行,并在按下变更集时执行(Ithink我应该使用“input”或“changegroup”钩子)
  • 在每个提交消息中搜索格式为“issue:[0-9]*”的字符串
  • 如果找到字符串,请调用Web服务,并提供问题号、提交消息和已更改的文件列表

所以,对于初学者来说,如何从“input”或“changegroup”钩子获取每次提交的提交消息?除此之外,关于如何实现其他要点的任何建议也将得到满足。在

谢谢你的帮助。在


Tags: 文件字符串web消息列表input格式issue
2条回答

您将希望使用incoming钩子,该钩子为应用于存储库上的每个变更集调用(通过pull、push或unbundle)。在

在调用脚本中,当前变更集id可以通过HG_NODE环境变量访问,在python中,可以使用os.environ['HG_NODE']访问它。在

根据您想要的方式,可以从提供的bugzilla hook作为起点。在

changegroup钩子在每次推操作中调用一次。如果您想分析每个变更集,那么您需要incoming钩子(没有inputhook AFAIK)——将为每个变更集调用它,ID在HG_NODE环境变量中。您可以使用hg log -r $HG_NODE template '{desc}'或通过API获取提交消息。在

相关问题 更多 >

    热门问题