相关疑难解决方法(0)

Mercurial:如何修改最后一次提交?

我正在寻找git commit --amendMercurial 的反向部分,即修改我的工作副本链接的提交的方法.该修订程序的要求是:

  • 如果可能,它不应该要求任何扩展.它不能要求非默认扩展,即没有官方Mercurial安装附带的扩展.

  • 如果修改提交是我当前分支的一个负责人,则不应创建新的头.如果提交不是头,则可以创建新头.

  • 该程序应该是安全的,如果由于任何原因修改失败,我希望在修改之前恢复相同的工作副本和存储库状态.换句话说,如果修改本身可能失败,则应该有一个故障安全过程来恢复工作副本和存储库状态.我指的是修改程序性质的"失败"(例如冲突),而不是与文件系统相关的问题(如访问限制,无法锁定文件进行写入,......) )

更新(1):

  • 该过程必须是自动化的,因此可以由GUI客户端执行,而无需任何用户交互.

更新(2):

  • 不得触摸工作目录中的文件(某些已修改文件可能存在文件系统锁定).这尤其意味着,可能的方法可能在任何时候都不需要干净的工作目录.

mercurial commit git-amend mercurial-commit

209
推荐指数
5
解决办法
10万
查看次数

编辑Mercurial早期提交消息 - TortoiseHg

有没有办法在使用TortoiseHg进行其他提交后,在提交时在Mercurial中编辑提交消息?我看过这些帖子:

如何在Mercurial中编辑不正确的提交消息?

Mercurial:如何修改最后一次提交?

并且当它是分支上的最新提交时(使用TortoiseHg)能够更新"常规"提交消息.但是,在我想编辑的其他提交之后,我无法弄清楚如何编辑提交消息.它总是编辑最后一次提交.

根据Ed Cottrell的评论,我做了一个测试,我在没有推送到中央仓库的情况下做了两次提交,我仍然有同样的问题 - 只能编辑最后一次提交消息.

编辑:我应该澄清,我正在寻找更新已被推动的变更集.

mercurial message commit tortoisehg

9
推荐指数
2
解决办法
9157
查看次数

如何在分支后编辑Mercurial提交消息?

我在Mercurial存储库中有一些旧的提交消息应该更改(以调整一些新工具).我已经明白,必须在主存储库上完成此黑客操作,并且必须重新克隆所有本地存储库,因为所有后续更改集的校验和也将更改.

我已经尝试按照" 如何在Mercurial中编辑不正确的提交消息? "中的配方,但是使用MQ扩展我遇到了错误消息

X:\project>hg qimport -r 2:tip
abort: revision 2 is the root of more than one branch
Run Code Online (Sandbox Code Playgroud)

与Histedit非常相似

X:\project>hg histedit 2
abort: cannot edit history that would orphan nodes
Run Code Online (Sandbox Code Playgroud)

问题似乎是在变更集之后创建了分支.

如果我想改变补丁的内容,我可以看到它会变得如何变得混乱,但也许有一个我在编辑提交消息时错过的解决方法?

version-control mercurial commit-message

8
推荐指数
1
解决办法
3084
查看次数