我很习惯使用 git,但出于好奇,最近一直在探索 Mercurial,因为 friend 认为它在某些方面更好。
然而,我注意到的第一件事是 Mercurial 似乎没有像 git 那样有索引。我倾向于做更多的更改,有时我应该做更多的更改,编辑文件后,我将使用 git add -p 来将补丁拆分为单独的提交。如果更改位于不同的文件中,我可能可以使用 MQ,但否则看起来我需要先撤消更改。
Mercurial 是否有一个扩展可以提供类似索引的功能?
最佳答案
有两种方法可以拆分变更集,具体取决于您是否已经提交了要拆分的更改:
有选择地从工作目录提交更改(如果您尚未提交更改):
- 使用
hg record
。 (这类似于使用git commit --patch
。)
要拆分现有变更集(如果您已经提交了更改):
使用
hg histedit
并选择要编辑的变更集上的编辑选项。 (这类似于使用git rebase -i
。)使用
hg record
有选择地将更改作为单独的更改集提交。完成后使用
hg histedit --continue
。其余未提交的更改将包含在最终更改集中。
正如其他人提到的,您可以使用 hg crecord
代替hg记录
。
关于mercurial - 在 Mercurial 中拆分变更集的最简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5501804/