转载:http://www.aixchina.net/club/thread-25902-1-1.html

这里,先说说冲突解决。

怎么会发生冲突呢?

两个人修改了不同文件?不会有冲突,他们不相关。

两个人同时修改了同一个文件的不同位置?不会有冲突,SVN很聪明。

两个人同时修改了同一个文件的相同位置?Bing!冲突来了。

工程师A修改了a.txt的第一行,提交了。

工程师B也修改了a.txt的第一行,然后执行svn up,这时SVN提示了:(以下,你开始扮演工程师B的角色了)
$ svn up
在 “a.txt” 中发现冲突。
选择: (p) 推迟,(df) 显示全部差异,(e) 编辑,
(mc) 我的版本, (tc) 他人的版本,
(s) 显示全部选项:

我一般选择p(推迟),即引入冲突到本地,不过不会影响到SVN服务器端,可以放心。

OK,开始解决冲突了。

这时,会生成几个文件:

a.txt  a.txt.mine  a.txt.r6328  a.txt.r6336

其中a.txt中包含了工程师A、B的所有修改,以<<<<<<<、=======、>>>>>>>分隔。

a.txt.mine是工程师B的修改,也就是未update前的a.txt。

a.txt.r6328 是工程师A提交前的版本,即未导致冲突的版本。

a.txt.r6336是工程师A提交后的版本,即导致冲突的版本。

一般,查看a.txt就可以看到冲突的详情了:

[yicheng@chengyi svntest]$ cat a.txt

<<<<<<< .mine

i also modify ,agndagnagasdg;

=======

i modify this line;

>>>>>>> .r6336

以上,<<<<<<<
.mine和=======之间是工程师B(当前的“你”)修改的内容,=======与>>>>>>>
.r6336之间是工程师A修改的内容。这时,最好的办法是,叫上工程师A,你们一起确定这些修改是否都需要,是否相互兼容,然后留下需要的部分,删
除<<<<<<< .mine、=======和>>>>>>>
.r6336。

然后,测试,测试!确定没问题之后,就可以告诉SVN,你解决冲突了:

svn resolve –accept working a.txt (该命令会删除a.txt.mine  a.txt.r6328  a.txt.r6336)

svn ci -m ’some comment’ a.txt

这里需要注意的是,a.txt.mine  a.txt.r6328  a.txt.r6336这几个文件的存在代表着有冲突产生。如果不解决冲突,就手
工删除它们,SVN服务器也会很傻的认为你解决了冲突,允许你继续之后
的工作。但是,冲突依旧存在,你的a.txt中不但有别人的修改,还有那些讨厌的<=>符号。

在冲突未解决前,试图提交代码是肯定会失败的:

$ svn ci -m ”

svn: 提交失败(细节如下):

svn: 提交终止: “/path/to/svntest/a.txt” 处于冲突状态

最新文章

  1. Javascript的动态增加‘类’的方法
  2. margin 碰到过的重叠问题
  3. php json_decode
  4. GENERATED_UCLASS_BODY 和 GENERATED_BODY 区别
  5. 初学JDBC,最简单示例
  6. CentOS6.7搭建蜜罐dionaea
  7. R语言保存文件 Error in save error writing to connection
  8. [iOS]如何删除工程里面用cocoapods导入的第三方库
  9. WebAPI GET和POST请求的几种方(转发)
  10. UI设计的奥义
  11. pc110301QWERTYU
  12. Spring MVC之LocaleResolver(解析用户区域)
  13. mac系统及xcode使用的SVN客户端升级
  14. C++学习笔记24,方法重写与方法隐藏
  15. Zookeeper简介和安装(二)
  16. Windows Server 2016-MS服务器应用程序兼容性列表
  17. Docke--基础篇
  18. 即将上线的Imcash是何方神圣?
  19. 用U盘制作启动盘后空间变小的恢复方法
  20. Leetcode题库——38.报数

热门文章

  1. 【转载】移动开发中的上下左右滑动插件jquery.swipe.js
  2. 深度学习方法(九):自然语言处理中的Attention Model注意力模型
  3. 打开Office2007弹出“向程序发送命令时出现问题” 解决方案
  4. JavaScript 兼容性总结
  5. Download failed : Oracle JDK 7 is NOT installed,解决oracle jdk7的问题
  6. chrome浏览器插件开发经验(一)
  7. vue表格导出
  8. 洛谷P1486 [NOI2004]郁闷的出纳员 [STL,平衡树]
  9. 火焰图&amp;perf命令
  10. 关于maven工程的几个BUG