SVN简介

来源:互联网 发布:蒋春暄 知乎 编辑:程序博客网 时间:2024/05/29 09:13

一、概述

SVN全名Subversion,即版本控制系统。SVN的核心是版本库,存储所有的数据,版本库按照文件树形式储存数据(包括文件和目录),任意数量的客户端可以连接到版本库,读写这些文件。通过写数据,别人可以看到这些信息;通过读数据,可以看到别人的修改。

二、为什么要进行版本控制?

情况一:当你在修改一个文件时,其他人也在修改这个文件?而你因此丢失过自己所作的修改;

情况二:曾经保存完一个修改,然后又希望能够看到一个文件以前某个时间点的状态?

情况三:在项目中发现了一个BUG,然后想了解它是什么时候产生的;

情况四:在一个团队中,方便大家的合作开发。

如果你出现了上面的四种情况,那你就有必要进行版本控制了。

三、应用SVN

对于怎么安装SVN就不在介绍,这里面就说一下里面的几个功能。

(1)   TortoiesSVN-add:将客户端新建的文件添加到文件库中,使其接受SVN的控制;

(2)   TortoiseSVN-commit:将对工作复本的修改发送给版本库;

(3)   TortoiseSVN-delete:删除了文件或目录并已经提交该删除操作到版本库;

(4)   TortoiseSVN-update:获得其他用户对文件进行的修改,与自己对文件进行的修改进行合并,保证文件总是最新;

(5)   TortoiseSVN-rename:对文件、目录进行Subversion控制下的改名操作,用此功能对文件/目录进行改名后文件仍处于SVN无法监控;

(6)   TortoiseSVN-revert:撤销本地所有未提交的修改;

四、缺点

(1) 服务器压力太大,数据库容量暴增。

(2)如果不能连接到服务器上,基本上不可以工作,看上面第二步,如果服务器不能连接上,就不能提交,还原,对比等等。

(3)不适合开源开发(开发人数非常非常多,但是Google app engine就是用svn的)。但是一般集中式管理的有非常明确的权限管理机制(例如分支访问限制),可以实现分层管理,从而很好的解决开发人数众多的问题。

五、优点:

(1)理方便,逻辑明确,符合一般人思维习惯。

(2) 易于管理,集中式服务器更能保证安全性。

(3)代码一致性非常高。

(4) 适合开发人数不多的项目开发。

(5)大部分软件配置管理的大学教材都是使用svn和vss

六、      注意事项

必须使用TortoiseSVN的重命名功能,直接在资源管理器中进行重命名SVN无法监控。

 

 

 

原创粉丝点击