即使在最简单的情况下,树与SVN发生冲突

时间:2014-04-23 22:45:20

标签: svn merge tree-conflict

我试图将主干合并到SVN的分支中。我不断遇到树冲突。我非常确定以下是将主干合并到分支的最简单的可能情况,但问题仍然存在:

$ svn ls svn://server
branches/
trunk/
$ svn ls svn://server/trunk
file1.tldr
file2.tldr
$ svn copy svn://server/trunk svn://server/branches/test_branch -m ""
Committed revision 4334.
$ cd /tmp
$ mkdir test
$ cd test
$ svn checkout svn://server/branches/test_branch
A    test_branch/file1.tldr
A    test_branch/file2.tldr
Checked out revision 4334.
$ cd test_branch
$ ls
file1.tldr  file2.tldr
$ svn merge svn://server/trunk 
--- Merging r4316 through r4334 into '.':
   C file1.tldr
   C file2.tldr
Summary of conflicts:
  Tree conflicts: 2
$ svn status
      C file1.tldr
      >   local add, incoming add upon merge
      C file2.tldr
      >   local add, incoming add upon merge

此时我还没有对任何进行任何更改 - 自创建test_branch(作为trunk的副本)以来,trunk和test_branch中的文件都没有被修改过。那怎么会有树木冲突呢?我错过了一步吗?我使用的是SVN 1.6。

提前致谢。我是SVN的新手。

1 个答案:

答案 0 :(得分:0)

  

怎么会发生树冲突?

我在树之前看到最大的问题:在范围内,建议用于合并r4316 through r4334:分支必须从主干只获得更改,从分支点发生 ,不是更早。对于游戏中的早期修订,你得到(预期)结果,即使看起来很奇怪:对于Subversion,两个文件都在分支点后的分支和主干中添加

修改

我会在主干日志中看到r4316的变化。如果它正在创建(稍后删除)分支test_branch

,我不会感到惊讶