1下载部署包
到www.collab.net/developers/tools/下载client和server端:
客户端:CollabNetSubversion-client-1.6.12-1.i386.rpm
下载地址:
http://www.open.collab.net/cn/downloads/subversion/redhat.html
选择此项:CollabNet Subversion Command-Line Client v1.6.12 (for Red Hat Linux)
服务器端:CollabNetSubversion-server-1.6.12-1.i386.rpm
下载地址:
http://www.open.collab.net/cn/downloads/subversion/redhat1.5.html
选择此项:CollabNet Subversion Server v1.6.12 (for Red Hat Linux)
2.安装
安装Server端之前需要安装client端。
rpm -Uvh CollabNetSubversion-client-1.6.12-1.i386.rpm
rpm -Uvh CollabNetSubversion-server-1.6.12-1.i386.rpm
3.配置
创建一个Repository目录:
mkdir -p /opt/svn/repos
运行配置脚本:
/opt/CollabNet_Subversion/bin/Configure-CollabNet-Subversion
根据提示创建项目库、用户等
配置完成后,自动启动SVN服务器。
用户名存储位置:/etc/opt/CollabNet_Subversion/conf/svnserve_auth_file
重启服务:
service collabnet_subversion restart
4.访问
svn://localhost/YOUR-REPOS-NAME (基于svnserver)
或者http://localhost/YOUR-REPOS-NAME (基于Apache)
5.与系统原有Apache集成
由于Collabnet的SVN自带了一个apache server,如果要使用系统原有的Apache server,可以在配置时选择svnserve方式,然后手工配置原来的Apache与SVN集成。
RHEL 使用的是httpd-2.2.3-11.el5_1.3.i386.rpm,Collabnet的官方网站提到Collabnet SVN不支持与RHEL原有Apache进行集成(http://subversion.open.collab.net/ds/viewMessage.do?dsForumId=3&dsMessageId=313586)不过有一位中国的兄弟回复可以通过加入Collabnet的库目录到系统库搜索目录来解决。
1)复制SVN模块
复制/opt/CollabNet_Subversion/modules/目录下的mod_authz_svn.so和mod_dav_svn.so 到/usr/lib/httpd/modules
2)修改httpd.conf文件
#vi /etc/httpd/conf/httpd.conf
增加:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /opt/svn/repos/
AuthType Basic
AuthName "Subversion"
AuthUserFile /opt/svn/passwdfile
#AuthzSVNAccessFile /opt/svn/accessfile
Require valid-user
</Location>
3)把Collabnet的库目录加入系统配置
此步骤主要解决启动Apache时出现如下错误。
Starting httpd: httpd: Syntax error on line 995 of /etc/httpd/conf/httpd.conf: Cannot load /etc/httpd/modules/mod_dav_svn.so into server: /opt/CollabNet_Subversion/lib/libsvn_subr-1.so.0: undefined symbol: apr_memcache_add_server
#vi /etc/ld.so.conf
增加一行:
/opt/CollabNet_Subversion/lib
#ldconfig
注:增加CollabNet lib后出现了Xwin启动出错:
nautilus can't be used now Nautilus can't be used now, due to an unexpected error from Bonobo when attempting to register the file manager view server.
网上说这是因为CollabNet lib下的libz.*库所引起的。可以使用另外一种方法,修改/etc/init.d/httpd脚本,增加红色部分:
start() {
echo -n $"Starting $prog: "
check13 || exit 1
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/CollabNet_Subversion/lib
LANG=$HTTPD_LANG daemon --pidfile=${pidfile} $httpd $OPTIONS
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch ${lockfile}
return $RETVAL
}
4)创建用户认证文件
例如增加2个用户test和test1,使用命令:
#htpasswd -cm /opt/svn/passwdfile test
New password:
Re-type new password:
Adding password for user test
#htpasswd -m /opt/svn/passwdfile test1
New password:
Re-type new password:
Adding password for user test1
注意:创建密码文件需要带-c参数, -m 表示使用更安全的MD5算法
6.问题
.使用http方式无法创建新文件夹,而使用svn://协议没有问题,错误信息:
Can't open file 'svn/db/txn-current-locks':permission denied
进入svn的reposity所在的目录,
# chown csvn:apache * -R
# chmod -R 770 *
7..其他SVN工具
1) SVNManager: http://svnmanager.org/
支持的功能:
Create, remove, load and dump repositories
Manage user accounts for access to the repositories
Manage groups for acces to the repositories
Invite users by email to create an account on the server
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/hansel/archive/2010/01/22/5223367.aspx