从CVS到Subversion的理由,1)这种转变是一种飞跃;2)还是免费;3)Subversion的质量,效果和能力确实高于CVS;
CVS用了好久了,一直要尝试Subversion,终于忍不住了……
Subversion可以以单机或服务器方式工作,推荐使用服务器方式;Subversion 可以配置成通过HTTPS或SSH隧道的方式访问,以提高服务器的安全性。
客户端介绍和安装:
客户端的安装比较简单,视具体项目需要可以使用不同的Clinets,具体使用方法大致相同。
Windows下的客户端,
TortoiseSVN是作为windows外壳程序集成到windows资源管理器和文件管理系统的Subversion客户端,很直观和便捷。项目主页: TortoiseSVN
AnkhSVN,Subversion的Visual Studio插件,主页:AnkhSVN
Subcommander,linux下的基于qt的Subversion客户端和diff,merge工具,连接: Subcommander
其他更多的插件和客户端详见Subversion页面,Subversion相关连接
Subversion服务器安装:
下载组件,对于Redhat Linux用户而言,去这儿下载Subversion的最新版本组件是最合适的地方,其他平台的用户也可以从Subversion的主页获得相应的安装文件。本文下面的安装配置以Fedora Core 2平台为主。Fedora 2的用户注意:Fedora Core 2官方发行中已经包含Subversion,请注意安装和升级。升级包和httpd插件包可以从这里ATrpms下载到。在Fedora Core 2上,需要安装或升级的包:
mod_dav_svn-1.0.6-2_5.rhfc2.at.i386.rpm Apache插件包
subversion-1.0.6-2_5.rhfc2.at.i386.rpm Subversion程序包(升级)
subversion-perl-1.0.6-2_5.rhfc2.at.i386.rpm Perl接口(不是必须)
设置不同的Subversion服务器:
Apache服务器,通过编辑/etc/httpd/conf.d/subversion.conf 文件来设置通过Apache服务器提供基于Web的SVN服务。
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so # 加载模块
#
# Example configuration to enable HTTP access for a Subversion
# repository, "/home/svnroot". This repository must be readable
# and writable by the 'apache' user.
#
# URL设置http://yourserver/svn/repos
DAV svn # 模块设置
SVNPath /home/svnroot # SVN库路径
# Limit write permission to list of valid users. 以下为权限设定
# Require SSL connection for password protection.
# SSLRequireSSL
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /path/to/passwdfile
Require valid-user