我要添加一些自定义代码,以便在提交后运行
作者:互联网
我每次尝试进行一次提交后,在哪里可以放置要运行的代码?具体来说,我想在项目根目录的.hg文件夹中维护一个名为Latest的文件-该文件将保存最新提交的修订号和哈希码.在同一主题上,如何在python中获得它们?
# get mercurial version hash
ver = ?
# get mercurial revision number
rev = ?
# is there a shortcut to this folder through mercurial?
f = open('/path/to/.hg/latest', 'w')
f.write('ver=%s\nrev=%d' % ( str(ver), int(rev) ) )
f.close
编辑:
我能够通过钩子(在.hg / hgrc中)完成上述操作:
[hooks]
precommit= echo node=`hg tip --template {node}` > tip && echo rev=`hg tip --template {rev}` >> tip && hg add tip
具有小费信息的文件已成功创建,但我也想通过hg add tip将其添加到当前提交中,这是Mercury进程卡住的地方,等待着挂起的提交显然持有的锁.有没有一种解决方法,可以将在提交/预提交期间创建的文件添加到其中?谢谢.
解决方法:
http://hgbook.red-bean.com/read/handling-repository-events-with-hooks.html
特别是你似乎想要提交钩子,其中有一个教程
当然,这听起来像您真正想要的是hg tip
标签:automation,customization,python,mercurial 来源: https://codeday.me/bug/20191024/1919054.html