2012-01-09 99 views
2

我从中继创建了一个分支Feature1。然后我从Feature1创建了一个分支Feature1.1。 像这样:Subversion - 嵌套分支

     +--------- Feature1.1 
        /
       +-----+----------- Feature1 
      /
/----------+--------------------------------------------- trunk 

现在我已经完成了我的工作的优点1,但我必须做更多的一些编码上Feature1.1,所以我已经合并特征1树干像这样:

  1. 合并:中继线 - >特征1
  2. 合并:特征1 - > Feature1.1
  3. 合并:特征1 - >中继线(与再集成)

然后,我的计划是合并“中继线 - > Feature1.1”并继续在Feature1.1中工作,并修复中继线中的Feature1错误。但是,当我尝试合并“Trunk - > Feature1.1”时,它看起来像项目中的所有文件都被标记为冲突。

我将不得不手动合并文件(约100个文件...),或有没有人知道如何解决这个问题?

一种解决方案可能是在Feature1.1文件合并到特征1(如果连这是可能的),然后做从特征1支另一干线复兴合并,合并。请参见SVN手册中的章节Keeping a Reintegrated Branch Alive

+0

不确定它会回答你的问题,但如果你使用的是git,那很简单。您只需对新干线重新分支分支Feature1.1。一个命令。我不认为在SVN中很容易,你可以使用“git svn”桥接,但是你很难将它同步回svn。 git是如何做到的 - 它重新获取了在新基础之上的Feature1.1中创建的差异(在您的案例中是最新的主干)。 – kan 2012-01-09 17:06:38

+1

可能它已经脱离了主题,但是......为什么不切换到不同的SCM? – pablo 2012-01-09 20:02:13

+0

@pablo:走开 - SVN非常适合它的用途。您选择的SCM不一定是每个人的最佳选择。 – 2014-10-30 19:39:44

回答

1

我认为它应该开箱即用。如果,因为它似乎,它不设置工作,因为你知道,在树干上做的每一个变化,直到在修改您的方案的步骤3达到了(我们会打电话给TheRev),你可能合并从中继线到Feature1.1的所有修订直到TheRev--record-only标志。它只会将这些修订标记为合并到Feature1.1中。

您应该可以照常上班。

+0

非常感谢,它工作。我不确定是否干线和分支需要彼此同步才能进行记录工作。你为我清除了这个。 – 2012-01-11 12:11:34