代码之家  ›  专栏  ›  技术社区  ›  Shaddix

SVN中分支与主干合并的问题

  •  1
  • Shaddix  · 技术社区  · 14 年前

    我们刚开始使用SVN(之前使用过cvs:thinh:),我在将分支合并回主干时遇到了问题。

    我已经从主干创建了Branch1,做了一些更改并将其合并回来(没有任何问题)。 然后我决定为第二个特性创建另一个分支,我错误地从分支1创建了它。(我本该从后备箱里拿出来的)。

    现在我在照片上的X点。Branch2完成了,我想把它合并回去。 但是,如果我尝试将branch2合并到主干,我会遇到很多 树冲突。我可以很容易地将branch2合并回branch1,但是再次出现 树冲突 when merging branch1 to trunk.

    没有直接在主干中进行更改,也没有在Branch1上进行更改,因为它被合并回后。

    所以,我的问题是:这种情况对SVN来说是正常的吗?我做错什么了吗(我刚开始)。

    我使用最新的Tortoissesvn,我正在通过选择合并来进行合并-“Reintegrate A branch”

    我已经从主干创建了Branch1,做了一些更改并将其合并回来(没有任何问题)。 然后我决定为第二个特性创建另一个分支,我错误地从分支1创建了它。(我本应该用后备箱做的)。

    branch tree

    现在我在照片上的X点。Branch2完成了,我想把它合并回去。 但是如果我尝试将分支2合并到主干,我会得到很多 tree conflicts . 我可以很容易地将branch2合并回branch1,但是 树冲突 将分支1合并到主干时。

    没有直接在主干中进行更改,也没有在分支1上进行更改。

    所以,我的问题是:这种情况对SVN来说是正常的吗?我做错什么了吗(我刚开始)。

    我使用最新的Tortoissesvn,并通过选择合并来进行合并-“重新整合分支”

    2 回复  |  直到 12 年前
        1
  •  2
  •   Dialecticus    14 年前

    “重新整合分支”选项对于常规工作很有用,但是因为您做了一些不规则的事情(分支之间的分支),所以它不再是最佳选项。使用“合并修订范围”选项,因为您可以在该选项中准确指定要合并的修订。只选择那些生成分支2的修订(使用日志来计算它们)。

        2
  •  0
  •   Elie Xu    12 年前

    我可以给你一个关于树冲突的线索,你应该检查关于冲突文件的svn:mergeinfo,看看svn是否重复合并(svn通过检查svn:mergeinfo决定要合并的修订)。