我正在寻找Mercurial中的git commit –amend的一部分,即修改我的工作副本链接到的提交的方法。 这个修改程序的要求是: 如果可能的话,它不应该要求任何扩展。 它不能要求非默认的扩展名 ,也就是不能与官方的Mercurial安装一起使用的扩展名。 如果提交修改是我目前分支的一个负责人,那么不应该创build新的负责人 。 如果提交不是头,可能会创build一个新头。 程序应该是安全的,如果出于某种原因修改失败,我希望恢复与修改之前相同的工作副本和存储库状态。 换句话说,如果修改本身可能失败,则应该有一个故障安全过程来恢复工作副本和存储库状态。 我指的是在修改过程(比如冲突)的性质中存在的“失败”,而不是文件系统相关的问题(比如访问限制,不能locking文件以便写入… ) 更新(1): 该过程必须是可自动化的 ,因此可以由GUI客户端执行,而无需任何用户交互。 更新(2): 不得触摸工作目录中的文件(某些修改的文件可能存在文件系统locking)。 这尤其意味着,一个可能的方法可能在任何时候都不需要一个干净的工作目录。