0
点赞
收藏
分享

微信扫一扫

SVN 版本冲突

一葉_code 2022-09-13 阅读 76


1. 问题描述

冲突问题是最常见的问题,它是这样产生的,A用户 check out 了一个工作副本A,接着B用户又check out了一个工作副本B。

然后A用户对副本A中的文件C做了修改(可以是内容修改,文件删除,重命名,以及位置移动),并且提交。

这时候B用户也对文件C的相同部分做了修改,这时候如果B用户进行提交,会先被告知版本过时,要求更新,后更新的时候会提示冲突了,这时候可以用冲突编辑器进行手动选择

SVN 版本冲突_svn

提交失败之后,会出现多个版本,此时需要解决版本冲突

SVN 版本冲突_右键_02

2. 解决版本冲突的两种办法

2.1 使用 SVN 自带的冲突工具

执行 edit conflicts 启动工具修改

SVN 版本冲突_svn_03

SVN 版本冲突_svn_04

我们在里边合并最后的两句话,然后点击 saved

SVN 版本冲突_右键_05


SVN 版本冲突_右键_06

执行 commit

2.2 手动解决

直接打开手动修改

执行resolve

SVN 版本冲突_版本冲突_07

效果图

SVN 版本冲突_右键_08


自己去修改,执行 commit

3. SVN 提交代码的规范

SVN 版本冲突_右键_09

4. 出现版本冲突的场合

A 早上 update 代码,写了一天;

B 在其间 commit ;

A 备份自己的代码,update B 的代码,再整合进去自己的代码,再 commit

5. 防止版本冲突的办法

  • 先update,再修改(不能完全解决)
  • 设置锁lock(太狠了,一般不建议使用)
  • 右键 –> TortoiseSVN –> get lock(相反: release lock)
  • 尽量避免,协调一下,谁的工作量小谁就尽量后提交一下
  • 分不同的包,尽量避免同时修改一个文件,如果不是同时修改一个文件,不会有冲突


举报

相关推荐

0 条评论