为什么会产生冲突代码呢?原因很简单,因为不同的人,同时修改了同一个文件的同一个地方,其中一个人提交了,另一个人就提交不了了。如果另一个人要提交代码,需要先进行更新,然后解决冲突后才能提交。
如果产生冲突,Svn会生成如下3个文件,用于帮助解决冲突。如图3-6所示。
■code.txt.mine是你修改后准备提交的版本,即没有提交成功的版本。
■code.txt.r1是冲突前本地的版本。
■code.txt.r2是别人赶在你之前提交的版本。
查看code.txt的内容,具体如下:
图3-6 Svn冲突文件
其中,<<<<<<<<.mine与=======之间的代码是你自己的,而======与>>>>>>>.r2之间的代码是别人与你冲突的部分。解决方案如下。
(1)在发生冲突的文件上执行“鼠标右键单击->TortoiseSVN->Edit conflicts”,弹出编辑对话框,如图3-7所示。
图3-7 Svn冲突编辑对话框
注意上面一共有三个窗口,三个窗口的含义见表3-1。(www.xing528.com)
表3-1 冲突解决窗口含义
对话框中有许多颜色,含义见表3-2。
表3-2 冲突解决窗口颜色含义
在红色块处单击鼠标右键,就会弹出如图3-8所示的菜单,根据菜单中的选项,进行文件的合并操作。
■use this text block:选取选中行的内容。
■use this whole file:选取选中行所在文件的全部内容。
■use text block from mine before theirs:先用自己的内容,接着再用别人的。
图3-8 Svn解决冲突选项
■use text block from theirs before mine:先用别人的内容,接着再用自己的。
(2)根据上面的操作步骤,解决完冲突后,选择save,然后选择“Mark as resolved”,最后在Svn文件夹中执行“鼠标右键单击->SVN Commit…”即可。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。