红联Linux门户
Linux帮助

linux下SVN冲突的解决方法

发布时间:2016-09-13 10:05:40来源:左手码农作者:刘锐群的笔记
冲突的发生
当有多个人使用同一分支的时候,在我 update 到 commit 之间,只要有人commit 同一份文件,那么我的 commit 就会出现冲突,提示提交不成功。
此时可以选择的做法有:
选择: (p) 推迟,(df) 显示全部差异,(e) 编辑,  
(mc) 我的版本, (tc) 他人的版本,  
(s) 显示全部选项:  
一般选择推迟(自信的话,当然可以选择mc),然后与其他开发人员协商解决。
 
冲突的解决
推迟之后,可以发现文件夹中存在的文件为
test.php.mine  test.php.r123  test.php  test.php.r107  
.mine是我的修改,尚未update前的 test.php。
.r107 是别人提交前的版本,尚未导致冲突的版本。
.r123是别人提交后的版本,导致冲突的版本。
test.php 包含了我和现有版本的冲突内容
在 test.php 文件中可以看到,多了一些以<<<<<<<、=======、>>>>>>>分隔符号
<<<<<<<.mine和=======之间是我刚刚修改的内容;
=======与>>>>>>>.r123之间是别人修改的内容
修改内容之后,执行命令
svn resolve –-accept working test.php  
此时会删除.mine 、 .r 等文件
然后再重新提交文件
svn ci -m  ’’
 
本文永久更新地址:http://www.linuxdiyf.com/linux/24115.html