1、環(huán)境安裝
[root@host_centos ~]#yum –y install subversion mod_dav_svn
[root@host_centos ~]#cat /etc/services |grep –color svn #查看己注冊(cè)
svn 3690/tcp # Subversion
svn 3690/udp # Subversion
2、創(chuàng)建版本庫(kù)目錄
[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、修改配置文件
將配置文件移動(dòng)到/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
將下面的進(jìn)行取消注釋
anon-access = none #匿名用戶不可讀寫(xiě)
auth-access = write #授權(quán)用戶可寫(xiě)
password-db =/vdb1/svn/passwd #使用哪個(gè)文件作為帳號(hào)文件
authz-db =/vdb1/svn/authz #使用哪個(gè)文件作為權(quán)限文件
realm = My test #認(rèn)證空間名
配置用戶和密碼
[root@host_centos ~]# vim /vdb1/svn/passwd
user1 = 123456
user2 = 123456
user3 = 123456
user4 = 123456
user5 = 123456
user6 = 123456
user7 = 123456
注意:此配置文件的所有內(nèi)容必須頂格寫(xiě),否則報(bào)錯(cuò);
配置用戶認(rèn)證權(quán)限
[root@host_centos ~]# vim /vdb1/svn/authz
[groups] #組
管理員組:admin_group = user1
開(kāi)發(fā)組:develps_group = user1, user2
資源組:resource_group = user3,user4
產(chǎn)品組: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服務(wù)的操作
啟動(dòng)svn服務(wù)命令:svnserve –d –r /vdb1/svn
關(guān)閉svn服務(wù)命令:
ps -aux|grep svnserve #先查出這個(gè)服務(wù)的進(jìn)程
kill -9 進(jìn)程號(hào) #將這個(gè)進(jìn)程殺死;
5、后期增加項(xiàng)目庫(kù)注意事項(xiàng)
后期如要再添加項(xiàng)目庫(kù),為了將所有用戶使用統(tǒng)一的密碼來(lái)進(jìn)行訪問(wèn)版本庫(kù),可以將 /var/svn/code/項(xiàng)目/conf/svnserve.conf文件的 password-db = passwd authz-db = /vdb1/svn/authz 的路徑進(jìn)行改更指向;
6 、其它
設(shè)置開(kāi)機(jī)啟動(dòng)
[root@host_centos ~]# chkconfig svnserve on
其它操作
svn代碼庫(kù)從一個(gè)倉(cāng)庫(kù)遷到另一個(gè)倉(cāng)庫(kù)
1.導(dǎo)出項(xiàng)目包括提交日志
svnadmin dump /var/svn/pnew/>pnew.svn
pnew:要導(dǎo)出的倉(cāng)庫(kù)名
2.導(dǎo)入
svnadmin load code --parent-dir new_admin < dd
code:新倉(cāng)庫(kù)?
new_admin:新倉(cāng)庫(kù)下的文件夾名