解决svn冲突的办法

本文详细介绍了如何通过交流、手动合并代码、利用SVN提供的工具解决SVN冲突,包括解决方法、操作步骤及注意事项。同时,提供了利用SVN解决冲突的额外方法,如手动合并代码和使用SVNrevert,以及提交修改和检查项目版本历史的操作流程。

1。其实避免的冲突最好的办法就是: 项目人在配合工作的时候,彼此之间很好的交流(我们都是面对面坐着)

作者:禚来强   原文地址: http://blog.youkuaiyun.com/diyagoanyhacker/article/details/6787509

2。当出现冲突的时候,svn会生成三个临时文件

              1.filename.mine 存储者本地的修改过的文件。

              2.filename.rOLDREV 存储者上次update的基础版本文件

              3.filename.rNEWREV 存储着客户端刚从服务器上接收来的版本。


3。当遇到冲突的时候有3种方法解决冲突

              1.手动合并代码,解决冲突。

              2.选择一个冲突出现时产生的临时文件来覆盖当前文件。

              3.运行svn resolved filename 命令来放弃当前文件的本地的所有修改。


4。一旦你解决了文件的冲突(手动合并代码),另一件要做的事情是运行 svn resolved filename 命令,告诉svn你已经解决了冲突,svn会去删除3个临时文件


5。手动合并代码


<<<<<<<<<<<<<<.mine


ab

cd


============

ef

hi

>>>>>>>>>>>>>>>>.r2

从<<<<<<<<<<<<<<.mine到============是你在冲突区做的修改

从============到>>>>>>>>>>>>>>>>.r2是服务器版本在冲突区做的修改

然后我们修改为

ab

cd

ef

hi


然后运行 svn resolved filename。

手动合并代码完成。


7。利用生成三个文件解决冲突

1)svn checkout   test.m

            C    test.h

可以看到test.h有冲突。

2)ls -a test.h*

             test.h.mine

             test.h.r1

             test.h.r2

可以看到生成了三个临时文件

3)cp test.h.r1 test.h

4)svn resolved test.h 


8。使用svn revert解决冲突

1)svn upldate test.h

           C test.h

2)svn revert test.h

3)ls -a test.h*

      test.h

    可以发现用revert解决冲突后,生成的三个临时文件也没有了,所以不需要运行 svn resolved test.h。


9。提交修改给版本库(svn ci)

1)svn commit  test.h -m "add code"


10。检查项目版本历史(svn log, svn diff, svn cat, svn list)

1)svn log       提供指定版本的创建者,日期,修改路径等。

2)svn diff       显示特定修改的行级信息

3)svn cat       取得特定版本的文件显示在屏幕上

4)svn list       显示一个目录在特定版本存在的文件

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值