SVN小知识

一、SVN是什么?

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。

二、功能

svn可以将你每一次的修改内容,差异进行统计。你也可以随时恢复到你想回去的相应版本(即你修改后上传时的每次更新的内容)。如果遇到多人操作了同一文件,svn会自动整合在一起,如果改到了同一行代码,svn会提醒你有冲突,方便去解决冲突。

三、优缺点

优点:
1、管理方便,逻辑明确,符合一般人思维习惯。
2、易于管理,集中式服务器更能保证安全性。
3、代码一致性非常高。
4、适合开发人数不多的项目开发。
 
缺点:
1、服务器压力太大,数据库容量暴增。
2、如果不能连接到服务器上,基本上不可以工作,看上面第二步,如果服务器不能连接上,就不能提交,还原,对比等等。
3、不适合开源开发
 
四、工作流程
1、从服务器下载项目组最新代码。
2、进入自己的分支,进行工作,每隔一个小时向服务器自己的分支提交一次代码。
3、下班时间快到了,把自己的分支合并到服务器主分支上,一天的工作完成,并反映给服务器。

SVN小知识_第1张图片

 

五、冲突的解决
刚才在功能中有提到,如果多人操作同一文件,可能会发生冲突,这是为什么呢?看以上流程图,可能用户1和用户2会同事从库中取出版本1,经过修改,如果两人先后提交可能后提交的用户版本会覆盖前一用户,这样当然是不可取的,所以就产生了版本冲突,那么我们应该如何解决呢?
1.将远程的文件更新到自己这里。 更新后,存了几个文件,把远程的东西留下来供自己解决冲突。
2.直接用最新的,放弃自己的。
3.组员间沟通。
 
六、总结
对这块知识只是初步了解,简单总结了一下,等用过以后还会返回来总结一下使用经验。SVN在我们进行项目开发中有很重要的作用,使用好它势在必行,我们最擅长的是使用工具,而这才刚刚开始。
 
感谢您的阅读!
 

你可能感兴趣的:(【版本控制】)