Svn 在与发布分支合并时,祖先是否重要?

Svn 在与发布分支合并时,祖先是否重要?,svn,merge,branch,Svn,Merge,Branch,我们正在创建一个Subversion存储库来存放当前不受版本控制的代码库。在我们当前的模型中,每个版本都有一个主线“bucket”(称之为5.6)和多个只修复bug的“bucket”(5.6.1、5.6.2等)。这很好地映射到具有多个发布分支的主干的SVN模型,尽管我们的布局会变得有点像这样: 5.6 树干等 5.6.x 树干等 预计将根据需要在5.6/trunk和5.6.x/trunk之间来回拾取更改。发布分支永远不会重新集成 在这种情况下,5.6.x/trunk是否实际上是5.6

我们正在创建一个Subversion存储库来存放当前不受版本控制的代码库。在我们当前的模型中,每个版本都有一个主线“bucket”(称之为5.6)和多个只修复bug的“bucket”(5.6.1、5.6.2等)。这很好地映射到具有多个发布分支的主干的SVN模型,尽管我们的布局会变得有点像这样:

  • 5.6
    • 树干等
  • 5.6.x
    • 树干等
预计将根据需要在5.6/trunk和5.6.x/trunk之间来回拾取更改。发布分支永远不会重新集成


在这种情况下,5.6.x/trunk是否实际上是5.6/trunk的
svn副本有关系吗?如果它们只是两个没有共享祖先的独立文件夹(据SVN所知),是否有可能发生合并冲突?

只要您的分支是要合并回的主干的SVN副本,一切都很好。另一方面,您需要使用——忽略祖先


注意:如果合并具有相同名称但不同祖先的文件,文件将被替换,而不是合并。通常情况下,这是非常糟糕的,很难检测到,并且会导致各种奇怪的问题(构建问题、新引入的bug等等)。只有在同时更改合并目标时,才会出现树冲突。您可以通过使用“忽略祖先”来避免这种情况,只要您的分支是要合并回的主干的svn副本,一切都正常。另一方面,您需要使用——忽略祖先

注意:如果合并具有相同名称但不同祖先的文件,文件将被替换,而不是合并。通常情况下,这是非常糟糕的,很难检测到,并且会导致各种奇怪的问题(构建问题、新引入的bug等等)。只有在同时更改合并目标时,才会出现树冲突。您可以使用--忽略祖先来避免这种情况