假设我有一个本地和一个远程 Mercurial 存储库。现在,我开始开发一个功能。我致力于它,当我认为它已经完成时,我提交变更集。多测试一下,我发现我可以通过调整代码中的某些内容来进一步改进此功能。我做出改变并 promise 。 20 分钟后,我发现这个新功能有一个 bug,所以我修复了它并提交了它。
我现在有 3 个变更集,我非常想将它们作为一个变更集推送到远程存储库,例如,带有消息“实现功能 X”。
我怎样才能轻松地做到这一点?我相信我可以通过补丁来做到这一点,但这似乎需要大量工作。
最佳答案
histedit 扩展正是您正在寻找的。p>
hg histedit -o
或
hg histedit --outgoing
将显示传出变更集的列表。从列表中您可以
- 折叠 2 个或更多变更集,创建一个变更集
- 删除变更集,将其从历史记录中删除
- 按照您喜欢的方式重新排序变更集。
histedit 将提示您输入折叠变更集的新提交消息,默认为两条消息,并用“\n***\n”分隔它们。
您也可以使用 mq 扩展获得类似的结果,但要困难得多。
您还可以使用折叠扩展来进行折叠,但它没有提供很好的 UI,也没有提供编辑生成的提交消息的方法。编辑生成的提交消息还可以清理最终消息,这是我最终经常使用的东西。
关于mercurial - 使用 Mercurial,如何在推送之前将一系列变更集 "compress" merge 为一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1200691/