svn全称是subversion,是一款版本管理软件,SVN支持linux和windows,本文主要是介绍在linux上的配置方法。
svn版本库可通过svn和http两种协议访问,如果使用http协议,需要apache服务器的配合,本文只介绍单纯的通过svn协议访问版本库的服务器配置。
配置svn服务器,需要以下安装包,apr-1.4.5.tar.gz || apr-util-1.3.12.tar.gz || sqlite-amalgamation-3.6.18.tar.gz || subversion-1.7.1.tar.gz
在linux上安装时,使用的命令如下:
安装apr:tar -zxvf apr-1.4.5.tar.gz
cd apr-1.4.5/
./configure --prefix=/usr/local/apr
make
make install
安装apr-util:
tar -zxvf apr-util-1.3.12.tar.gz
cd apr-util-1.3.12/
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make
make install
安装sqlite:
tar -zxvf sqlite-amalgamation-3.6.18.tar.gz
cd sqlite-3.6.18/
./configure --prefix=/usr/local/sqlite
make
make install
安装svn:
tar -zxvf subversion-1.7.1.tar.gz
cd subversion-1.7.1/
./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util -with-pcre=/usr/local/pcre --with-sqlite=/usr/local/sqlite --with-ssl --with-zlib
make
make install
至此,已经在linux服务器上装好了svn服务器,还需要一些简单的配置。
创建一个版本库test svnadmin create /home/repository/test
开启服务器 svnserve -d -r /home/repository
创建用户名和密码
进入/home/repository/test/conf,修改其中的3个文件:
svnserve.conf文件修改如下:
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
authz文件修改如下:
[groups]
usoft=admin
[/]
@usoft=rw
*=
[/test]
@usoft=rw
*=
passwd文件修改如下:
[users]
admin=123
其中:123是账号admin对应的密码。
另外,由于linux权限管控比较严格,可能会出现某些在windows客户端无法提交的情况,可通过修改版本库的权限来实现:
chmod -R 777 /home/repository
通过上面的赋权限后,每个人都有读写和执行/home/repository的权限,严格来讲,这样是不安全的,要达到更安全的效果,可通过chown命令来对访问linux版本库特定的计算机名进行开放,但这样也要复杂些。