linux下SVN冲突的解决方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/liuruiqun/article/details/52356919

冲突的发生


当有多个人使用同一分支的时候,在我 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  ’’ 


猜你喜欢

转载自blog.csdn.net/liuruiqun/article/details/52356919