SVN冲突

来源:互联网 发布:sql 横向合并结果集 编辑:程序博客网 时间:2024/05/17 21:44

SVN是什么?
svn是一个开放源代码的版本管理软件,SVN=版本控制+备份服务器,可以将你每一次的修改内容,差异进行统计,保存到服务器上。你也可以随时恢复到你想回去的相应版本(即你修改后上传时的每次更新的内容)。SVN就是用于多个人共同开发同一个项目,共用资源的目的。

为什么要使用SVN?
1.版本控制
我们在修改代码的时候,突然发现自己的思路错了,代码被改的面目全非却回不到从前了,这时候就需要版本控制,直接reserve到上一个版本就可以。

2.备份服务器
当我们在写代码的时候,突然硬盘有问题了,写的几个月的代码付之东流,所以时时备份是关键,有了SVN,当我们修改一点的时候就要及时提交到服务器进行备份。

3.追溯问题代码的编写人和编写时间!
当多个人在开发一个项目时,突然因为这个系统让公司损失了一百万,这时项目经历就要追溯问题代码在哪里,是谁编写的,SVN就很好地记录了每一次的修改操作和时间。

SVN主要还是用于多人开发同一个项目,共享资源,当一个修改的地方提交之后,我就可以直接拿来使用、但是经常出项的一个问题就是版本冲突。

什么是SVN冲突?
团队协同工作时,多位人员同时修改同一个文件,造成本地文件与SVN系统文件不一致,而导致文件无法提交的情况。

什么原因造成的冲突?
当有多个人员如A和B同时修改同一个版本的文件,如v2.1版本的文件。当A修改完成提交之后,文件变为v2.2版本,但是B修改的依然时v2.1版本的文件,当B再提交的时候就会产生冲突,低版本的文件不能覆盖高版本的库。

如何解决冲突?
1.返回上一个版本,取消修改
2.当产生冲出时,右击编辑冲突,系统会自动生成三个文件,一个是别人修改的文件,一个是自己的文件,还有一个是合并之后的文件,根据需要我们选择一个就可以解决冲突
这里写图片描述

如何避免SVN冲突?
1.修改文件之前,先进性一个update操作
2.修改完成之后及时commit,不要在本地停留时间太长
3.设置权限,每个人只能修改自己负责的部分,尽量不要修改不属于自己的部分

总结:
SVN在团队开发软件的过程中起了很重要的作用,遇到冲突是很正常的一件事情,知道如何解决冲突就好。