大家论坛-大家学习网论坛计算机专区Linux论坛Linux高级应用 → 新一代开源版本控制工具Subversion简介

意见反馈-google提供的广告

  共有858人关注过本帖树形打印

主题:新一代开源版本控制工具Subversion简介

帅哥哟,离线,有人找我吗?
ubuntu
  1楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:大家网小学六年级 贴子:161 金钱:762 金币:0 积分:35 魅力:0 精华:4 注册:2007-10-11 10:13:00
新一代开源版本控制工具Subversion简介  发贴心情 Post By:2008-6-30 16:41:00

subversion:新一代的开源版本控制工具,CVS的下一代,具有以下特性

# 具有CVS大多数的当前特性
Subversion意味着更好的CVS,所以它具有大多数CVS的特性。大致说来,Subversion的接口在某些特性上与CVS很类似,若没有特殊原因让你选择其他的解决方式,就采用Subverioin。

# 目录、重命名以及文件元数据都被标示了版本
不具有这些特性是大多数CVS用户所抱怨的。Subversion的版本不仅仅是文件内容以及文件是否存在,还包括目录、副本和重命名。同时它还允许任意的元数据(属性)与任何文件或目录一起标示版本,并且提供了一种用于在文件上标示‘执行’权限标志的版本机制。

# 提交具有真正的原子性
在整个提交没有成功之前任何提交的部分都不会生效。修订(Revision)数量是根据每次提交而定的,并不是每个文件;日志信息附加到了修订内容中,不会像CVS那样冗余。

# 可以选择Apache服务器,使用WebDAV/DeltaV协议
Subversion 可以使用基于HTTP协议的WebDAV/DeltaV协议作为网络通讯协议,并且Apache Web服务器提供了仓库端的网络服务。这就使得Subversion在互操作上比CVS有优势,并且提供了很多免费的关键特性:认证、基于路径的认证、压 缩、基本的仓库浏览。

# 可以选择独立运行
Subversion同时也提供了一个以独立服务器运行的选项,它使用自定义的协议(并不是每个人都希望运行在Apache 2.x之上)。独立的服务器可以运行为inetd服务,或者deamon模式,并且提供基本的认证和授权。它可以经由ssh访问。

# 分支(Branching)和标签(Tagging)的开销更小(具有固定的时间)
没有任何理由让这些操作更费时,所以它们必须如此。
分支和标签都使用底层的“复制”操作来实现。复制操作使用很小的,固定大小的空间。任何复制都是一个标签;如果你开始提交一个副本,那么它也就会成为一个分支。

# 天然的C/S结构、分层的库设计
Subversion从一开始就被设计成C/S结构的;这样就避免了一些折磨着CVS的维护问题。代码被组织成具有明确的接口的模块,设计成被其他程序调用。

# C/S 协议在两个方向上发送diff
网络协议在两个方向传输diff时能够高效的使用带宽。(CVS发送diff从服务器到客户端,而不是从客户端到服务器)

# 开销与更改的大小有关而不是数据大小
一般而言,Subversion操作所需的时间和操作所导致的结果的大小是成比例的,并不是项目更改发生时的绝对文件大小。这是Subversion仓库模型的一个特性。

# 可选择数据库或者普通文件作为仓库实现
仓库可以使用一个内嵌的数据库支持(BerkeleyDB)或者使用普通的平面文件,两者都使用自定义的格式。

# 给符号连接标示版本
Unix用户可以将符号连接加入版本控制。这些连接可以在Unix中被再次创建,在Win32中则不可以。

# 处理二进制文件更高效
Subversion在处理二进制上和处理文本文件一样高效,因为它使用二进制比较算法传输和存储成功的修订版本。

# 可解析的输出
所有Subversion命令行客户端的输出都是仔细设计成方便人们阅读并且自动解析;脚本具有更高的优先级。

# 本地化消息
Subversion使用gettext()来显示翻译过的错误、报告和帮助信息,基于当前的区域设置。


客户端:
Subversion的客户端有两种,一种是web浏览器,一种是像TortoiseSVN的安装客户端,前者需要服务器端的支持,后者需要用户在本地安装客户端,两种都有免费开源的软件供使用(都是国外的,国内就惭愧了,好的没有开源,开源的没有好的)。

服务器:
Subversion支持linux和windows,更多是安装在linux下,因为Subversion与apache,mysql等免费开源软件结 合的很好,事实上,Subversion的密码管理就是通过apache实现,一般客户端还可以安装邮件服务器,为的是配合Subversion的邮件通 知功能,客户端则可以安装在任意机器。

使用实例:
一般中小企业是不用自己配置Subversion服务器的,在国外,代码托管是很流行的,像很多大的网站,鼎鼎大名的sourceforge,就是做开源 和代码托管起家,国内相对来说,即使是应用也是很落后的,iusesvn就是专门交流使用的网站,事实上也就是配置管理员在注意这些事情,并没有引起项目 管理者和企业的领导层的兴趣,当然国内也有专业做Subversion代码托管服务的,iSubversion网站就是专业的配置管理提供商。
 


闻到死太贵,
麦克价更高。
有了乌斑兔,
二者皆可抛。
0  回到顶部