我在分支之间合并更改时遇到问题。
我有默认分支default
。
当我开始在新问题下工作时,我会从default
创建#565之类的新分支并使用它。工作之后我将#565的代码更改合并到default
中 - 效果很好。
我也有分支anotherbranch
- 这就像生产分支一样,如果在default
上进行了测试,我们可以在那里合并。
有时我需要将代码更改从#565合并到anotherbranch
。当我尝试这样做时,Mercurial让我在#565和anotherbranch
之间合并所有代码更改(因为#565是default
的孩子)。
如何才能合并#565的代码更改?
答案 0 :(得分:4)
有人建议使用移植命令,这可能是你最终会使用的,但让我退后一步,并建议如果你稍微改进你的过程,这个问题就会消失。
一般情况下,如果您修复了从anotherbranch
分支的新分支中的错误,并在default
的分支中添加新功能,那么您将拥有两全其美的优势。修复“生产”分支中的错误,然后立即将名为anotherbranch
的生产分支合并回default
。
这是通常的过程,确保错误修复无处不在,但新功能在获得良好测试之前不会生产。
答案 1 :(得分:0)
我认为您需要的是graft command("将其他分支的更改复制到当前分支")。
答案 2 :(得分:0)
正如Ry4an建议的那样,解决此问题的最佳方法是修改工作流程。您可能还需要考虑使用mq extension来创建补丁。修补程序是仅将某些更改应用于存储库的好方法,特别是如果您还没有为完全合并做好准备。