http://www.cnblogs.com/hsapphire/archive/2010/04/10/1709190.html
1. svn服务器安装操作系统: Centos 5.3,安装步骤:
获取svn安装包:
# wget “http://subversion.tigris.org/downloads/subversion-1.6.6.tar.gz”
# wget “http://subversion.tigris.org/downloads/subversion-deps-1.6.6.tar.gz”
编译svn以root用户登录:
# tar xfvz subversion-1.6.6.tar.gz
# tar xfvz subversion-deps-1.6.6.tar.gz
# cd subversion-1.6.6
# ./configure --prefix=/opt/svn --without-berkeley-db
(注:以svnserve方式运行,不加apache编译参数。以fsfs格式存储版本库,不编译berkeley-db)
# make && make install
在/etc/profile最后加入 SVN Path 以方便操作:
# vi /etc/profile
PATH=$PATH:/opt/svn/bin
export PATH
测试是否安装成功:
# svnserve --version
或
# /opt/svn/bin/svnserve �Cversion
[root@hexu softs]# /opt/svn/bin/svnserve --version
如果显示如下,svn安装成功:
二、 配置svn: 本文以两个项目为例
1. 创建svn项目文件夹(自定义)
mkdir -p /var/svn/doc/
mkdir -p /var/svn/www/
2. 创建仓库
svnadmin create /var/svn/doc/ /opt/svn/bin/svnadmin create /var/svn/doc/
svnadmin create /var/svn/www/ /opt/svn/bin/svnadmin create /var/svn/www/
3. 配置svn
# vi /var/svn/doc/conf/svnserve.conf
内容:
[general]
anon-access = none
auth-access = write
password-db = /var/svn/conf/passwd.conf
authz-db = /var/svn/conf/authz.conf
realm = doc
# vi /var/svn/www/conf/svnserve.conf
内容:
[general]
anon-access = none
auth-access = write
password-db = /var/svn/conf/passwd.conf
authz-db = /var/svn/conf/authz.conf
realm = www
# vi /var/svn/conf/passwd.conf
[users]
rooney=123456
admin=admin
# vi /var/svn/conf/authz.conf
[groups]
g_admin = admin
[/]
@g_admin = rw
[doc:/]
rooney = rw
[www:/]
rooney = rw
4. 启动svnserve:
/opt/svn/bin/svnserve -d --listen-port 3690 -r /var/svn/ svnserve -d -r /var/svn/
注:可以把svn启动加入到系统启动中,
vi /etc/rc.d/rc.local
插入行:svnserve -d --listen-port 3690 -r /var/svn/
5. 停止subversion服务
ps -aux | grep svnserve
kill -9 ID号
三、 应用SVN
1. windows访问
svn://SVN服务IP地址:3690/doc/
在弹窗输入登录帐号: rooney 有读写权(rw)
svn://SVN服务IP地址:3690/www/
在弹窗输入登录帐号:rooney 仅读权(r)
2. linux
四、 SVN访问FAQ
1. 拒绝访问
首先检查SVN是否配置正确,然后查看SVN端口(3690)防火墙是否开放.
# service iptables stop (停用防火墙:start 启用)
访问SVN是否正常,如果正常,说明端口(3690)没有开放.
安全考虑,启用防火墙,仅开放端口(3690)
# service iptables start
# /sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT
# /etc/rc.d/init.d/iptables save (保存)
# /etc/init.d/iptables status (查看打开端口)
或者
# vi /etc/sysconfig/iptables
添加:
-A OUTPUT -p tcp -m tcp --dport 3690 -j ACCEPT
svn 文件导出
svn export --force --username=admin --password=admin svn://127.0.0.1/doc/version/code /var/export/list
svn export --force --username=admin --password=admin svn://127.0.0.1/www/chebang/ctrl /var/export/list