将命名分支与默认 Mercurial 分支合并是否正确?

问题描述

我遇到了以下有关 Mercurial 使用的问题。我有两个分支:default 分支,让我们说 A 分支。建立 A 分支(下图中的点 1)后,对 default 分支(下图中的点 2)进行了一些修改,因此情况如下

                1             2
----default-----o-------------o
                 \
                  \
                   -----A------

我的目标是在 default 分支上进行来自 A 分支(从点 2)的更改。我的想法是为此使用 hg merge default 命令。我搜索了这个论坛,找到了 similar question。基于这一点,在我看来,我的意图至少是可行的,但我不确定这是否是正确的方法,因为我认为包括 default 分支的合并应该只在方向上完成:{{1} }.我的问题是我上面建议的方法,即与 named branch->default branch 分支合并是否正确?

解决方法

这真的不是“对或错”的问题。从技术上讲,Mercurial 支持您的建议。您可以从任何分支合并到任何其他分支。

问题是什么最适合您的工作流程。如果问题是在 default 上进行了本应在 A 上进行的更改,那么从 default 合并到 A 似乎是合适的。但是也可能有其他方法来进行这种更正(如果确实需要这样做的话)。然而,这个问题没有足够的信息来真正详细说明这一点。

如果打算在分支上做新的功能开发,然后只将完成的工作结果合并到默认值上,这似乎是合理的,我认为是一种常见的方法。

不管怎样,如果你还没有,你应该仔细定义在哪个分支上完成什么工作,以避免混淆和错误。