前言:公司要求搭建一台SVN代碼版本管理服務器,用於管理所有代碼資產;
項目架構圖
1、環境安裝
[root@host_centos ~]#yum –y install subversion mod_dav_svn
[root@host_centos ~]#cat /etc/services |grep –color svn #查看己注冊
svn 3690/tcp # Subversion
svn 3690/udp # Subversion
2、創建版本庫目錄
[root@host_centos ~]# mkdir -p /vdb1/svn
[root@host_centos ~]# svnadmin create /var/svn/code
[root@host_centos ~]# svnadmin create /var/svn/resource
[root@host_centos ~]# ls /var/svn/code/
README.txt conf db format hooks locks
3、修改配置文件
將配置文件移動到/vdb1/svn目錄下
[root@host_centos svn]# mv /vdb1/svn/code/conf/authz /vdb1/svn/
[root@host_centos svn]# mv /vdb1/svn/code/conf/passwd /vdb1/svn/
修改code下的svnserve.conf文件
[root@host_centos ~]# vim /vdb1/svn/code/test/conf/svnserve.conf
將下面的進行取消注釋
anon-access = none #匿名用戶不可讀寫
auth-access = write #授權用戶可寫
password-db =/vdb1/svn/passwd #使用哪個文件作為帳號文件
authz-db =/vdb1/svn/authz #使用哪個文件作為權限文件
realm = My test #認證空間名
配置用戶和密碼
[root@host_centos ~]# vim /vdb1/svn/passwd
user1 = 123456
user2 = 123456
user3 = 123456
user4 = 123456
user5 = 123456
user6 = 123456
user7 = 123456
注意:此配置文件的所有內容必須頂格寫,否則報錯;
配置用戶認證權限
[root@host_centos ~]# vim /vdb1/svn/authz
[groups] #組
管理員組:admin_group = user1
開發組:develps_group = user1, user2
資源組:resource_group = user3,user4
產品組:product_group = user5,user6
UI組:ui_group = user7
修改resource下的svnserve.conf文件
[root@host_centos svn]# vim /vdb1/svn/resource/conf/svnserve.conf
anon-access = none
auth-access = write
password-db = /vdb1/svn/passwd
authz-db = /vdb1/svn/authz
4、SVN服務的操作
啟動svn服務命令:svnserve –d –r /vdb1/svn
關閉svn服務命令:
ps -aux|grep svnserve #先查出這個服務的進程
kill -9 進程號 #將這個進程殺死;
5、後期增加項目庫注意事項
後期如要再添加項目庫,為了將所有用戶使用統一的密碼來進行訪問版本庫,可以將 /var/svn/code/項目/conf/svnserve.conf文件的 password-db = passwd authz-db = /vdb1/svn/authz 的路徑進行改更指向;
6 、其它
設置開機啟動
[root@host_centos ~]# chkconfig svnserve on
其它操作
svn代碼庫從一個倉庫遷到另一個倉庫
1.導出項目包括提交日志
svnadmin dump /var/svn/pnew/>pnew.svn
pnew:要導出的倉庫名
2.導入
svnadmin load code --parent-dir new_admin < dd
code:新倉庫名
new_admin:新倉庫下的文件夾名
http://xxxxxx/Linuxjc/1169936.html TechArticle