首页云计算 正文

什么是svn?svn通过采用什么高效管理?

2024-12-03 4 0条评论

SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。

SVN采用客户端/服务器体系,项目的各种版本都存储在服务器上,程序开发人员首先将从服务器上获得一份项目的最新版本,并将其复制到本机,然后在此基础上,每个开发人员可以在自己的客户端进行独立的开发工作,并且可以随时将新代码提交给服务器。当然也可以通过更新操作获取服务器上的最新代码,从而保持与其他开发者所使用版本的一致性。 [3]

SVN的客户端有两类,一类是基于Web的WebSVN等,另一类是以Tortoise SVN为代表的客户端软件。前者需要Web服务器的支持,后者需要用户在本地安装客户端,两种都有免费的开源软件供使用。SVN存储版本数据也两种方式:BDB(一种事务安全型表类型)和FSFS(一种不需要数据库的存储系统)。因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。

svn的特性

统一的版本号。CVS是对每个档案顺序编排版本号,在某一时间各档案的版本号各不相同。而Subversion下,任何一次提交都会对所有档案增加到同一个新版本号,即使是提交并不涉及的档案。所以,各档案在某任意时间的版本号是相同的。版本号相同的档案构成软体的一个版本。

原子提交。一次提交不管是单个还是多个档案,都是作为一个整体提交的。在这当中发生的意外例如传输中断,不会引起资料库的不完整和数据损坏。

重新命名、复制、删除档案等动作都储存在版本历史记录当中。

对于二进制档案,使用了节省空间的储存方法(简单的理解,就是只储存和上一版本不同之处)。

目录也有版本历史。整个目录树可以被移动或者复制,操作很简单,而且能够保留全部版本记录。

分支的开销非常小。

最佳化过的资料库存取,使得一些操作不必存取资料库就可以做到。这样减少了很多不必要的和资料库主机之间的网路流量。

支援元资料(Metadata)管理。每个目录或档案都可以定义属性(Property),它是一些隐藏的键值对,使用者可以自订属性内容,而且属性和档案内容一样在版本控制范围内。

支援FSFS和Berkeley DB两种资料库格式。

文章版权及转载声明

本文作者:admin 网址:http://news.edns.com/post/172166.html 发布于 2024-12-03
文章转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码