1. 安裝
CentOS通過yum安裝subversion。
# yum install subversion
subversion安裝在/bin目錄:
# which svnserve #查看目錄命令/usr/bin/svnserve
檢查一下subversion是否安裝成功。不要使用1.8版本
# svnserve --version
svnserve, version 1.7.14 (r1542130)
2. 建立版本庫
subversion默認以/var/svn作為數據根目錄,可以通過/etc/sysconfig/svnserve修改這個默認位置。
# vim /etc/sysconfig/svnserve
文件內容
OPTIONS="-r /var/svn"
可修改
使用svnadmin建立版本庫svntest。
# mkdir -p /var/svn/svntest //遞歸創建多個目錄
# svnadmin create /var/svn/svntest
# ll /data/svn/svntest //查看目錄中內容
drwxr-xr-x. 2 root root 51 Nov 10 14:42 conf
drwxr-sr-x. 6 root root 4096 Nov 10 14:42 db
-r--r--r--. 1 root root 2 Nov 10 14:42 format
drwxr-xr-x. 2 root root 4096 Nov 10 14:42 hooks
drwxr-xr-x. 2 root root 39 Nov 10 14:42 locks
-rw-r--r--. 1 root root 229 Nov 10 14:42 README.txt
3. 配置
cd /var/svn/svntest
a、編輯用戶文件passwd,新增兩個用戶:admin和guest。
# vim conf/passwd
[users]
admin = admin
guest = guest
b、編輯權限文件authz,用戶admin設置可讀寫權限,guest設置只讀權限。
# vim conf/authz
[/]
admin = rw
guest = r
c、編輯svnserve.conf:
# vim conf/svnserve.conf
[general]anon-access = none #控制非鑒權用戶訪問版本庫的權限
auth-access = write #控制鑒權用戶訪問版本庫的權限
password-db = passwd #指定用戶名口令文件名
authz-db = authz #指定權限配置文件名
4. SVN服務
啟動SVN服務。
# systemctl start svnserve.service
檢查服務是否啟動成功。
# ps aux | grep svnroot 16349 0.0 0.1 162180 900 ? Ss 15:01 0:00 /usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid -r /opt/svn
通過netstat可以看到SVN打開了3690端口。
# netstat -tnlpProto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 16349/svnserve
設置成開機啟動。
# systemctl enable svnserve.service
5. 更改防火牆設置
大坑,注意阿里雲要開相應端口3690
# vim /etc/sysconfig/iptables
添加一下兩行 vim操作 yy p
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3690 -j ACCEPT
然后退出編輯,重啟防火牆
查看 # iptables -L -n
# /bin/systemctl restart iptables.service
6. 客戶端測試
客戶端可以通過TortoriseSVN測試。


Linux下客戶端使用SVN
將文件checkout到本地目錄svn666
svn checkout svn://127.0.0.1 ./svn666
有修改的時候
# svn add * //添加文件
# svn commit -m '這是注釋內容' //提交
# svn update //更新
https://blog.csdn.net/u010071211/article/details/79877303