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