安裝環境:
CentOS 5.6
subversion-1.6.16.tar.bz2
subversion-deps-1.6.16.tar.bz2
------------------------------------------
本文以svnserve爲例,步驟以下:
1、安裝SVN
1. 獲取
wget -c http://subversion.tigris.org/downloads/subversion-1.6.16.tar.bz2
wget -c http://subversion.tigris.org/downloads/subversion-deps-1.6.16.tar.bz2
2. 編譯安裝
tar zxvf subversion-1.6.16.tar.bz2
tar jxvf subversion-deps-1.6.16.tar.bz2
cd subversion-1.6.16
./configure --with-ssh --enable-maintainer-mode
make && make install
cd ..
2、 配置svn: 本文以兩個項目爲例
1. 建立svn項目文件夾(自定義)
mkdir -p /data0/htdocs/svn/repos1/
mkdir -p /data0/htdocs/svn/repos2/
2. 建立倉庫
svnadmin create /data0/htdocs/repos1/
svnadmin create /data0/htdocs/repos2/
3. 配置svn
# vi /data0/htdocs/repos1/conf/svnserve.conf
內容:
[general]
anon-access = none
auth-access = write
password-db = /data0/htdocs/svn/passwd.conf
authz-db = /data0/htdocs/svn/authz.conf
realm = repos1
# vi /data0/htdocs/repos2/conf/svnserve.conf
內容:
[general]
anon-access = none
auth-access = write
password-db = /data0/htdocs/svn/passwd.conf
authz-db = /data0/htdocs/svn/authz.conf
realm = repos2
# vi /data0/htdocs/svn/passwd.conf
[users]
mirze=123456
admin=admin
# vi /data0/htdocs/svn/authz.conf
[groups]
g_admin = admin
[/]
@g_admin = rw
[repos1:/]
mirze = rw
[repos2:/]
mirze = r
4. 啓動svnserve:
svnserve -d --listen-port 3312 -r /data0/htdocs/svn/
注:能夠把svn啓動加入到系統啓動中,
vi /etc/rc.d/rc.local
插入行:svnserve -d --listen-port 3312 -r /data0/htdocs/svn/
5. 中止subversion服務
ps –aux | grep svnserve
kill -9 ID號
3、 應用SVN
1. windows訪問
svn://SVN服務IP地址:3312/repos1/
在彈窗輸入登陸賬號: mirze 有讀寫權(rw)
svn://SVN服務IP地址:3312/repos2/
在彈窗輸入登陸賬號:mirze 僅讀權(r)
2. linux
4、 SVN訪問FAQ
1. 拒絕訪問
首先檢查SVN是否配置正確,而後查看SVN端口(3312)防火牆是否開放.
# service iptables stop (停用防火牆:start 啓用)
訪問SVN是否正常,若是正常,說明端口(3312)沒有開放.
安全考慮,啓用防火牆,僅開放端口(3312)
# service iptables start
# /sbin/iptables -I INPUT -p tcp --dport 3312 -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 3312 -j ACCEPTlinux