情况一:更新后出现若干个冲突文件,文件所在的文件夹也会有红色感叹号
解决方法:
1. Revert看下有哪些冲突文件
2. Revert列表建议按Status排序,这样我们需要解决的冲突对象就会聚在一起(那些红色的Conflicted文件)
在开始处理冲突之前,需要先判断这些文件是否与自己的修改内容有关:
(1)如果与自己的修改内容有关,Show Log看看上一个修改人是谁,然后商量一下应该怎么处理,比如重做谁的部分代价更小:
<1> 如果决定上一个修改人重做,那么自己先备份相关的修改内容,然后Revert该冲突文件,接着用备份的文件覆盖替换、提交,提交后再通知上一个修改人重做
<2> 如果决定自己重做,也是先做好备份,避免忘记自己的修改内容,然后Revert该冲突文件,重做自己的部分后再提交
【顺带一提,如果项目组形成了在使用(全部或部分)文件前都要先Lock的规范,那么每个人在Lock时都能知道当前有没有人在使用该文件,而不会出现修改完要提交时才发现冲突的情况】
(2)如果与自己的修改内容无关,直接Revert
情况二:更新后出现若干个Tree Conflicted文件夹,直接Revert会提示Can't revert XXXXX without reverting children
解决方法:
1. 按照前面的方法打开Revert列表,然后判断这些文件夹是否与自己有关(有限的经验告诉我一般都是无关的),有关就先按前面的方法对每个文件逐个处理,无关就走下一步
2. 在Revert列表里选中这些Tree Conflicted文件夹,鼠标右键,然后选择Undo,等待它们从Revert列表消失
情况三:更新时遇到无法拉新的问题,提示Please execute the 'Cleanup' command
解决方法:
1. 在更新失败的文件夹执行Clean Up指令
2. Clean Up列表默认不勾选后三项,直接OK就可以解决大部分情况。如果问题没有得到解决,或者非常肯定自己没有修改过文件,这时就可以把后三项勾上,然后再Clean Up
(笔者目前想到的冲突情况就以上这些,如果还是没有解决问题,可以私戳或者在评论区留言)