Subversion的使用方法和CVS相似,相信大家都已经有所了解了,在这里呢就不对Subversion的使用进行详细讲解,我们只对Subversion的设置进行介绍,另外在讲解一下Subversion客户端下载问题。
1.Subversion简介
Subversion是一款非常流行的开源版本控制系统,将来会逐渐替代CVS,支持可在本地访问或通过网络访问的数据库和文件系统存储库。Subversion不但提供了常用的比较、修补、标记、提交和分支等功能,其还增加了追踪移动和删除等功能。此外,Subversion支持非ASCII文本和二进制数据,所有这一切都使Subversion不仅对传统的编程任务非常有用,同时也适于Web开发、图书创作和其他在传统方式下未采纳版本控制功能的领域。Subversion具有如下特性。
保留大多数CVS特性。Subversion意味着比CVS更好,其拥有CVS的大多数特性,一般说来,Subversion的接口与CVS的十分相似,除了一些强制性因素而选择其他方式。目录、重命名和文件meta-data都已经版本化。Subversion客户端不仅仅对文件内容和文件存放位置进行版本控制,也对目录、副本、重命名操作进行版本控制。它也允许对附加在任意文件和目录上的metadata进行版本化,并提供一种机制对文件的执行权限进行控制。
提交成为真实的原子操作。在整体提交成功之前不会有部分提交起作用,修订号对应每次提交而不是对应每个文件,log信息被到修订号上,并还是像CVS那样需要额外的位置存放。可以选择Apache网络服务器,使用WebDAV/DeltaV协议。Subversion可以使用基于HTTP的WebDAV/DeltaV协议来进行网络通信,由Apache网络服务器提供源代码库端的网络服务。这使得Subversion具有优于CVS的协同性,同时也提供了许多关键特性:认证、数据压缩和基本的库浏览。#p#
独立服务器模式选项。Subversion通过使用自定义的协议也提供了独立服务器选项,独立服务器模式可以作为inetd的一个服务运行,或者以守护进程模式运行,并且提供了基本的认证和授权,也可以使用SSH作为通道。分支(Branching)和标签(Tagging)的开销更小(具有固定的时间)。分支和标签都使用底层的“复制”操作来实现。复制操作使用很小的、固定大小的空间。任何复制都是一个标签;如果你开始提交一个副本,那么它也就会成为一个分支。天然的客户端/服务器,分层的库设计。
Subversion从开始就设计为客户端/服务器模式,从而免去了许多维护问题。代码由一系列结构化的模块组成,有定义良好的接口,设计为能够被其他程序调用。C/S协议在两个方向上发送diff。网络协议在两个方向传输diff时能够高效地使用带宽(CVS发送diff从服务器到客户端,而不是从客户端到服务器)。消耗和修改部分的大小成比例,而不是数据的大小。通常情况下,Subversion操作所耗费的时间与此次操作引起的变化成比例,而不是对这个项目改变的绝对值,这个是Subversion版本库模型的特性之一。
可以选择数据库和纯文件的源代码库实现。源代码库可以使用嵌入的数据库后端创建,也可以使用定义格式的纯文件的后端创建。对象链接的版本化。UNIX用户可以在版本控制中放置对象链接。该链接会在UNIX的工作副本中重建,但不会在win32工作副本中重建。高效处理二进制文件。Subversion对于二进制文件的处理具有同处理文本文件一样的高效性,这是因为其在传输和存储连续的修订版本中使用二进制的文件交换算法。可解析的输出。所有的Subversion客户端命令行输出的内容都经过精心设计以达到易读和自动解析的目的。脚本化也具备较高的优先级。本地化信息。Subversion会根据当前本地设置使用gettext()来显示传输错误、报告和帮助信息。
2.下载并安装Subversion客户端
NetBeansIDE6.0提供对Subversion客户端1.3.x或更高版本的支持。在使用NetBeans集成开发环境中的Subversion支持之前,需要在系统中安装有Subversion客户端软件。Subversion客户端软件可以在http://netbeans.open.collab.net/下载。根据计算机操作系统的不同,选择相应版本的命令行客户端。
下载完毕后,打开安装文件启动安装程序。默认情况下,Subversion客户端软件可执行程序被安装在UNIX系统和MacOSX系统的/usr/local/bin/文件夹下,在WindowsXP系统中会安装在C:\ProgramFiles\CollabNetSubversion\文件夹下。在选择安装位置时,尽量使用默认位置,安装完成后单击“Finish”按钮关闭安装程序。
【编辑推荐】