【发布时间】:2016-09-17 23:29:32
【问题描述】:
昨晚我开始了合并;忘记提交了。
后来我对工作副本进行了一些更改。
今天我不再想要那个合并(因为我将在更新的版本上合并),但我想保留本地工作更改。这些更改独立于任何合并解决方案。
如何在中止当前合并时保留(和/或稍后重新应用)本地更改?
不允许在本地更改上使用shelve:
$ hg shelve foo/bar
abort: cannot shelve while merging
使用hg up -C,“中止合并”的正常方式,将消除本地更改。
这不像How to 'hg merge' without affecting the working directory?,因为合并已经开始,只是没有提交。涉及首先完成提交,然后选择更改的答案是合适的,如果可以简单地显示的话,尽管问题集中在“没有提交的情况下中止”。
【问题讨论】:
-
能否将您想要保留的更改导出为补丁?我想这可能会有点费力。
-
@Nanhydrin 我热衷于在这种情况下“最大限度地减少”恢复乏味的同时可以完成的任何过程。我发现了一些魔术来欺骗 Hg 以为它不在合并中,但似乎应该将其保留为魔术:}