所谓Tree Confict,就是至少有一个人修改了目录结构,包括文件或者文件所在目录的改名、删除、移动。然后Update或Merge的时候就报了Tree Conflict。
介绍一下概念
Delete:其中目录结构变化,都认为是Delete
Edit:是指修改文件
Local:是你本地修改
Incoming:是别人修改,你要Update或Merge进来。
这样应该有4个组合,但是Edit对Edit的组合应该是File Conflict,这个容易解决,不在Tree Conflic 讨论范围,所以有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
我目前认为比较可行的方法,就是那个文件或文件夹一定会被标识成为TreeConflict,这时就用log查看谁修改了什么,最好和其他组员沟通一下,然后人工思考如何合并即可。掌握原理应该有助于分析,但是确实有点小乱,看我整理的下表: