安裝
卸載舊版
查看是否存在舊版,
#rpm -qa subversion
subversion-1.6.11-15.el6_7.x86_64 顯示類似
存在,卸載:
# yum remove subversion
Complete!
配置svn
默認(rèn)安裝:
#yum install subversion
查看詳細(xì)版本信息:
# svnserve --version
創(chuàng)建目錄
#mkdir -p /var/svn/svnrepos
添加目錄到svn版本庫(kù)版本庫(kù)
#svnadmin create /var/svn/svnrepos
進(jìn)入conf目錄(該svn版本庫(kù)配置文件)
#cd /var/svn/svnrepos/conf/
其中有三個(gè)文件:
authz:權(quán)限控制文件
passwd:帳號(hào)密碼文件
svnserve.conf:SVN服務(wù)配置文件
添加賬號(hào)密碼
#vim passwd
格式:帳號(hào)=密碼 以上語(yǔ)句都必須頂格寫, 左側(cè)不能留空格, 否則會(huì)出錯(cuò).
配置權(quán)限
#vim authz
[/] /*代表可以訪問(wèn)根目錄
賬號(hào)=rw /*讀寫權(quán)限
配置svn
#vim svnserve.conf
將這幾行去掉注釋并填寫
anon-access = read /*匿名用戶可讀 可以是read,write,none
auth-access = write /*授權(quán)用戶可寫
password-db = passwd /*使用哪個(gè)文件作為賬號(hào)文件
authz-db = authz /*使用哪個(gè)文件作為權(quán)限文件
realm = /var/svn/svnrepos /*認(rèn)證空間名,版本庫(kù)所在目錄,之前創(chuàng)建的目錄
啟動(dòng)關(guān)閉服務(wù)
啟動(dòng)svn版本庫(kù) #svnserve -d -r /var/svn/ /*此目錄為SVN的.啟動(dòng)目錄.
關(guān)閉SVN命令 #killall svnserve
查看進(jìn)程 #ps -ef|grep svn|grep -v grep
iptables:
# vi /etc/sysconfig/iptables
添加以下內(nèi)容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
保存后重啟防火墻
# service iptables restart
svn://ip 就可以鏈接
svn配置進(jìn)階
權(quán)限控制authz配置
#vim authz
目的是設(shè)置哪些用戶可以訪問(wèn)哪些目錄,向authz文件追加以下內(nèi)容:
[groups] /*組
root = centos,www /*創(chuàng)建一個(gè)root組,將用戶加入到組
.....
語(yǔ)法:
[啟動(dòng)目錄下的項(xiàng)目名:/目錄/目錄/..]
.....
[/] /*根目錄權(quán)限設(shè)置(就是“svn”這個(gè)文件夾)
centos = rw /*aaa對(duì)svn下的所有版本庫(kù)有讀寫權(quán)限
[repo:/] /*repo:/,表示對(duì)repo版本庫(kù)下的所有資源設(shè)置權(quán)限
@root = rw /*root組的用戶對(duì)repo版本庫(kù)有讀寫權(quán)限
[repo2:/bcp] /*表示對(duì)版本庫(kù)repo2中的bcp項(xiàng)目設(shè)置權(quán)限
[repo2:/bcp/aaa] /*表示對(duì)版本庫(kù)2中的bcp項(xiàng)目的aaa目錄設(shè)置權(quán)限
權(quán)限主體可以是用戶組、用戶或*
用戶組在前面加@,*表示全部用戶。
權(quán)限可以是w、r、wr和空,空表示沒(méi)有任何權(quán)限。
另外要注意,即使svnserve服務(wù)已經(jīng)運(yùn)行,修改配置文件或者用戶、權(quán)限管理文件,保存后馬上生效,不需要重啟服務(wù)。
開(kāi)機(jī)啟動(dòng)
svn默認(rèn)不開(kāi)機(jī)啟動(dòng)
查看結(jié)對(duì)路徑: which svnserve
編寫一個(gè)啟動(dòng)腳本svn_startup.sh 保存在/root/svn_startup.sh
#!/bin/bash
/usr/bin/svnserve -d -r /home/svn/
執(zhí)行命令修改執(zhí)行權(quán)限:
#chmod ug+x svn_startup.sh
或者
#chmod 777 svn_startup.sh
加入自動(dòng)運(yùn)行:
#vi /etc/rc.d/rc.local
在末尾添加腳本的路徑,如:
/root/svn_startup.sh
重啟后:#ps -ef|grep svnserve 查看確認(rèn)