api – 如何在Mercurial进程内钩子中访问提交消息?
发布时间:2020-12-16 23:08:19 所属栏目:Python 来源:网络整理
导读:我一直在努力 def debug_hook(ui,repo,**kwargs): changectx = repo[None] ui.status('change.desc: %sn' % changectx.description()) return True 但它总是打印一个空字符串.这是因为它是一个precommit钩子,而且消息还没有?或者我只是遗漏了一些明显的东
我一直在努力
def debug_hook(ui,repo,**kwargs): changectx = repo[None] ui.status('change.desc: %sn' % changectx.description()) return True 但它总是打印一个空字符串.这是因为它是一个precommit钩子,而且消息还没有?或者我只是遗漏了一些明显的东西? 解决方法
事实证明,我的初始方法存在两个问题:
>正如jk所指出的,precommit事件发生在提交之前,因此正在处理的提交的元数据尚不存在.相反,通过使用pretxncommit,元数据存在,但事务尚未提交到数据库. 请注意,如果将changectx = repo [‘tip’]与precommit事件一起使用,您实际上将处理最后一次提交,而不是当前正在处理的提交. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |