【IT168 技术文章】
subversion(以下简称SVN)是近年来崛起的版本管理工具,是CVS的接班人。
SVN服务器有2种运行方式:独立服务器和借助apache。2种方式各有利弊。
SVN存储版本数据也有2种方式:BDB和FSFS。因为BDB方式在服务器中断时,有可能锁住数据(我在搞ldap时就深受其害,没法根治),所以还是FSFS方式更安全一点。
1. SVN服务器安装
操作系统: Redhat Linux AS4
安装包获取:
下载http://subversion.tigris.org/downloads/subversion-1.4.0.tar.gz和http: //subversion.tigris.org/downloads/subversion-deps-1.4.0.tar.gz。
编译:
以root用户登录。
将subversion-1.4.0.tar.gz和subversion-deps-1.4.0.tar.gz传到服务器。
tar xfvz subversion-1.4.0.tar.gz
tar xfvz subversion-deps-1.4.0.tar.gz
cd subversion-1.4.0
./configure --prefix=/opt/SVN --without-berkeley-db –with-zlib
(注:以SVNserve方式运行,不加apache编译参数。以fsfs格式存储版本库,不编译berkeley-db)
make clean
make
make install
vi /etc/profile,在/etc/profile最后加入:
PATH=$PATH:/opt/SVN/bin
export PATH
测试:
SVNserve –version
如果显示如下,安装成功:
SVNserve, version 1.4.0 (r21228)
compiled Oct 12 2006, 10:18:56
Copyright (C) 2000-2006 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository back-end (FS) modules are available:
* fs_fs : Module for working with a plain file (FSFS) repository.
2. SVN配置
建立版本库目录,可建多个:
mkdir -p /opt/SVNdata/repos1
mkdir -p /opt/SVNdata/repos2
建立版本库:
SVNadmin create /opt/SVNdata/repos1
SVNadmin create /opt/SVNdata/repos2
修改版本库配置文件:
版本库1:
vi /opt/SVNdata/repos1/conf/SVNserve.conf
内容修改为:
[general]
anon-access = none
auth-access = write
password-db = /opt/SVN/conf/pwd.conf
authz-db = /opt/SVN/conf/authz.conf
realm = repos1
版本库2:
vi /opt/SVNdata/repos2/conf/SVNserve.conf
内容修改为:
[general]
anon-access = none
auth-access = write
password-db = /opt/SVN/conf/pwd.conf
authz-db = /opt/SVN/conf/authz.conf
realm = repos2
即除realm = repos2外,其他与版本库1配置文件完全相同。如果有更多的版本库,依此类推。
配置允许访问的用户:
vi /opt/SVN/conf/pwd.conf