1.檢查是否已安裝
rpm?-qa?subversion
如果要卸載舊版本:
yum?remove?subversion
2.安裝
yum?install?subversion
PS:yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql(這是安裝配合Apache的模塊进栽,我暫時(shí)還沒做,做了再補(bǔ)上恭垦,你可以只裝subversion快毛,多裝了也無(wú)所謂)
3.檢查是否安裝成功
svnserve?--version
如果成功會(huì)輸出版本號(hào)
4.創(chuàng)建倉(cāng)庫(kù)目錄
例如:
mkdir?/code/svn/repositories
5.創(chuàng)建項(xiàng)目
svnadmin create /code/svn/repositories/proj
6.檢查是否創(chuàng)建成功
cd /code/svn/repositories/project
如果成功,game目錄下會(huì)多出幾個(gè)文件夾
7.進(jìn)入conf目錄會(huì)看到3個(gè)配置文件番挺,生成的文件中都有英文注釋說明
示例需求:
策劃組:開策劃唠帝、美術(shù)讀寫
后端組:開后端讀寫,策劃只讀
前端組:開前端讀寫建芙,策劃没隘、美術(shù)只讀
美術(shù)組:開美術(shù)讀寫,策劃只讀
管理員組:所有的讀寫
authz:用戶權(quán)限配置
示例:
[groups]
#管理組
manager?=?boss
#服務(wù)端用戶組
server?=?server1,server2
#客戶端用戶組
client?=?client1,client2
#美術(shù)組
art?=?art1,art2
#策劃組
design=design1,design2
[game:/]
@manager=rw
[game:/server]
@server=rw
[game:/client]
@client=rw
@design=r
@art=r
[game:/art]
@design=rw
@art=rw
@client=r
[game:/design]
@design=rw
@server=r
@client=r
@art=r
passwd:用戶密碼
[users]
boss=123456
server1=123456
server2=123456
client1=123456
client2=123456
art1=123456
art2=123456
design1=123456
design2=123456
svnserve.conf:
#匿名訪問者權(quán)限
anon-access?=?none
#驗(yàn)證用戶權(quán)限
auth-access?=?write
#密碼文件地址
password-db?=?/home/svn/game/passwd
#權(quán)限文件地址
authz-db?=?/home/svn/game/authz
#項(xiàng)目名稱(UUID)
realm?=project
8.開放svn端口
默認(rèn)是3690端口禁荸,你也可以用別的右蒲。已開啟的跳過這一步
修改
iptables?-I?INPUT?-p?tcp?--dport?3690?-j?ACCEPT
保存
/etc/rc.d/init.d/iptables?save
重啟
service?iptables?restart
查看
/etc/init.d/iptables?status
9.啟動(dòng)SVN服務(wù)
svnserve?-d?-r?/code/svn/repositories
-d:守護(hù)進(jìn)程
-r:svn根目錄
假設(shè)服務(wù)端IP為192.168.1.100阀湿,那么如下設(shè)置后game的訪問目錄就為:
svn://192.168.1.100/project
10.安裝客戶端TortoiseSVN
11.建立子目錄
在客戶端PC上找個(gè)目錄,用管理員帳戶從svn://192.168.1.100/game遷出game目錄瑰妄,分別新建art,design,server,client 4個(gè)子目錄陷嘴,然后提交。
這時(shí)候你可以用其他組的帳戶測(cè)試下是否正常使用了间坐。
12.安裝好的svn服務(wù)端灾挨,默認(rèn)是不會(huì)開機(jī)自啟動(dòng)的,每次開機(jī)自己?jiǎn)?dòng)會(huì)很麻煩竹宋,我們可以把它設(shè)成開機(jī)啟動(dòng)
方法一
vi /etc/rc.d/rc.local
添加一行? /usr/bin/svnserve -d -r /code/svn/repositories
方法二
首先:編寫一個(gè)啟動(dòng)腳本svn_startup.sh劳澄,我放在/root/svn_startup.sh
#!/bin/bash
/usr/bin/svnserve?-d?-r?/home/svn/
這里的svnserve路徑保險(xiǎn)起見,最好寫絕對(duì)路徑蜈七,因?yàn)閱?dòng)的時(shí)候秒拔,環(huán)境變量也許沒加載。
絕對(duì)路徑怎么查飒硅?
which?svnserve
這里還有可能碰到一個(gè)問題砂缩,如果你在windows下建立和編寫的腳步,拿到linux下三娩,用vi或者vim修改后可能會(huì)無(wú)法執(zhí)行庵芭,這是文件格式的問題
vi?svn_startup.sh
輸入:set?ff?回車
如果顯示的結(jié)果不是fileformat=unix
再次輸入
set?ff=unix
就OK了
然后修改該腳本的執(zhí)行權(quán)限
chmod?ug+x?svn_startup.sh
或者萬(wàn)能的
chmod?777?svn_startup.sh
最后:加入自動(dòng)運(yùn)行
vi?/etc/rc.d/rc.local
在末尾添加腳本的路徑,如:
/root/svn_startup.sh
現(xiàn)在雀监,你可以重啟一下試試了双吆。 不懂得怎么確認(rèn)成功?敗給你了
ps?-ef|grep?svnserve