Eclipse_SVN冲突解决方法
参考前文:
1、冲突产生的原因
Tom与Jeery都同时从服务器中检出了同一个项目X,此时Tom将项目X修改后,上传到服务器中,但是Jeery也更改了项目X并且更改的地方与Tom更改的地方有重合,即Tom与Jeery同时修改了项目X的相同的地方,则此时只能有一个提交成功,假设Tom先改完先提交则可以提交成功,而Jeery后改完后提交是则会报错,即我们所说的冲突。
2、如何避免冲突
- 在Jeery再次更改时,应该及时先执行更新操作,看是否自己的项目是服务器中最新的版本;
- 同时负责一个项目的员工应该主动交流,及时沟通反馈项目进展以及自身对项目做出了哪些修改。
3、冲突实例
-
Tom与Jeery都同时检出了服务器中的javaSVAN项目,如下图:
-
此时Tom修改了第8行的代码,并进行了提交,而此时Jeery不知道服务器中的版本已经由Tom上传了更新的版本,所以未执行更新操作,也修改了第8行代码,此时提交就坏提交冲突,如下图:
-
Tom修改并提交改项目至服务器中:
-
Jeery并未做更新操作,也修改与Tom相同位置的代码后,做提交操作,提示冲突,如下图:
-
若此时Jeery点击更新,则会显示Jeery与Tom锁更改的相同地方的信息,及冲突所在的位置,其中<<<<< .main 到 === 此处为Jeery修改的内容, === 到 >>>>>>为另一个人修改内容(此处为Tom),如下图
-
此时也会在Jeery中多出三个文件,如下图:
-
第一个文件为自身修改的项目文件(此处为Jeery)如下图:
-
第二个文件为服务器中的项目文件(即Tom与Jeery共同修改的项目文件)如下图:
-
第三个文件为自身修改的项目文件(此处为Jeery)如下图:
-
在冲突文件中,点击右键——编辑冲突,会将冲突文件以对比的形式呈现出来,如下图:
-
如果确定要以后来修改者Jeery的项目文件为最新的文件(若在参考Tom修改的项目文件后还需修改,则再编辑冲突中直接修改即可),完后关闭这个编辑冲突界面,右键冲突文件——Team——标记为解决,完成操作后Jeery就可以正常提交了。
- 标记为解决冲突后,此时可以看到那三个文件已经消失了,Jeery可以正常提交项目文件了: