经常有人会说,树冲突是很难解决的一类冲突,其实一旦了解了其原理,要解决也不难。先回顾下对于树冲突的定义。
树冲突:当一名开发人员移动、重命名、删除一个文件或文件夹,而另一名开发人员也对它们进行了移动、重命名、删除或者仅仅是修改时就会发生树冲突。
出现冲突时,一般会提示冲突的信息是什么。过后我们可以使用svn st来查看当前状态。svn st的各种状态代表什么,请参考此博文svn st状态详解。
先介绍一下概念
Delete : 其中目录结构变化,都认为是Delete
Edit: 是指修改文件
Local : 是你本地修改
Incoming :是别人修改,你要Update或Merge进来。
这样应该有4个组合,但是Edit对Edit的组合应该是File Conflict,这个容易解决,不在Tree Conflict 讨论范围,所以有3种组合。再需要区别Update和Merge,就有了6种情况。分别是
Local delete, incoming edit upon update
Local edit, incoming delete upon update
Local delete, incoming delete upon update
Local missing, incoming edit upon merge
Local edit, incoming delete upon merge
Local delete, incoming delete upon merge
http://blog.sina.com.cn/s/blog_6dc4dbed01018wmt.html