Merge 仅提取合并变更集时发生意外冲突
我们有三个相关的Mercurial回购协议,我们目前正在开发中使用。如图所示,我们有:Merge 仅提取合并变更集时发生意外冲突,merge,mercurial,branch,Merge,Mercurial,Branch,我们有三个相关的Mercurial回购协议,我们目前正在开发中使用。如图所示,我们有: 发布版本One(Base已发布,我们即将发布补丁) 内部版本Two,与One不同,仅在我们的CI系统使用的一些测试代码中 即将发布的三个版本 承诺回购后,变更总是推送到“较低”的回购。我的问题是,变更集A2(事后来看,可能是A1)在被合并为两个之前直接合并为三个 目前,即使所有成分变化都在Three中,回购Two的尖端不会在没有大量冲突的情况下合并(粗虚线)到Three 我看到的选择是: 重新合并A2和
- 发布版本One(Base已发布,我们即将发布补丁)
- 内部版本Two,与One不同,仅在我们的CI系统使用的一些测试代码中
- 即将发布的三个版本
hg commit--close branch
来消除混乱的合并,然后将替换合并推到Threehg从混乱的合并中剥离。遗憾的是,我无法剥离托管回购协议,因此我必须跳一段舞来替换那里的回购协议(并通知使用该回购协议的小型团队)
请注意,图像经过简化,通常会有多个变更集在合并到下一个之前被推送到repo。您正在进行一次合并(合并的两个父项没有一个共同的祖先),Mercurial并不真正喜欢这些变更集。您可以尝试该算法,但一定要彻底测试/审核结果,因为这是一个实验特性。