2

在尝试将我的分支与主干同步时,我发现了一个有趣的问题。

  1. 我使用 r17964 通过“svn cp”命令在主干上创建了分支 A。

    svn log --stop-on-copy
    ------------------------------------------------------------------------
    r17964 | MYID | 2012-11-06 08:58:26 -0600 (Tue, 06 Nov 2012) | 2 lines
    JIRA-4749: added Sonar into Maven build.
    
  2. 我通过带有 rev17965-17966 的“svn cp”命令在主干上创建了分支 B。

    $ svn log --stop-on-copy
    ------------------------------------------------------------------------
    r17966 | MYID | 2012-11-06 13:38:42 -0600 (Tue, 06 Nov 2012) | 2 lines
    JIRA-4750: added condor soap module back to the trunk.
    
  3. 我将分支 B 的更改合并回主干。

    ------------------------------------------------------------------------
    r17967 | MYID | 2012-11-06 14:24:06 -0600 (Tue, 06 Nov 2012) | 2 lines
    JIRA-4750: merged back to the trunk.
    

现在我尝试将分支 B 上所做的更改从主干拉到分支 A。但是,“svn log --stop-on-copy”不会显示分支 A 中所做的更改,而分支 A 确实在主干中。

svn log --stop-on-copy
------------------------------------------------------------------------
r17964 | MYID | 2012-11-06 08:58:26 -0600 (Tue, 06 Nov 2012) | 2 lines
JIRA-4749: added Sonar into Maven build.

我应该怎么做才能取消更改?谢谢。

4

1 回答 1

2

我不遵循您的逻辑,即分支“A”是主干的一部分。一旦你创建了一个分支,它就是它自己的独立实体。它只知道它是从哪里分支出来的。

在从分支“B”升级更改后,分支“A”不知道这些更改。

我认为您想要的是将“主干”中的更改合并到分支“A”中。这将使用合并到主干中的所有最新更改来更新“A”分支。

如果您只是在寻找差异,请使用 svn diff命令。

于 2012-11-06T22:18:45.280 回答