所以,我想做一个基本的 mercurial 扩展,将一个字符串附加到提交消息中。下面显示的代码放置在一个文件中 -myextension.py
并包含在.hgrc
.
当我运行hg commit -m "A message"
时,提交编辑器将打开,"A message APPENDED"
并按预期显示消息。但是,如果我尝试通过按 CTRL+X 中止提交,提交仍然会出现完整的、现在附加的消息。
我在这里做错了什么?
from mercurial import commands, extensions
def commit(originalcommit, ui, repo, *pats, **opts):
if not opts["message"]:
return originalcommit(ui, repo, *pats, **opts)
else:
opts["force_editor"] = True
opts["message"] += " APPENDED"
return originalcommit(ui, repo, *pats, **opts)
def uisetup(ui):
extensions.wrapcommand(commands.table, 'commit', commit)