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的模塊,我暫時還沒做,做了再補上,你可以只裝subversion,多裝了也無所謂)
3.檢查是否安裝成功
svnserve --version
如果成功會輸出版本號
4.創建倉庫目錄
例如:
mkdir /home/svn/game
5.創建項目
svnadmin create /home/svn/game
6.檢查是否創建成功
cd /home/svn/game
7.進入conf目錄會看到3個配置文件,生成的文件中都有英文注釋說明
示例需求:
策划組:開策划、美術讀寫
后端組:開后端讀寫,策划只讀
前端組:開前端讀寫,策划、美術只讀
美術組:開美術讀寫,策划只讀
管理員組:所有的讀寫
后端組:開后端讀寫,策划只讀
前端組:開前端讀寫,策划、美術只讀
美術組:開美術讀寫,策划只讀
管理員組:所有的讀寫
authz:用戶權限配置
示例:
[groups]
#管理組
manager = boss
#服務端用戶組
server = server1,server2
#客戶端用戶組
client = client1,client2
#美術組
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
#管理組
manager = boss
#服務端用戶組
server = server1,server2
#客戶端用戶組
client = client1,client2
#美術組
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
boss=123456
server1=123456
server2=123456
client1=123456
client2=123456
art1=123456
art2=123456
design1=123456
design2=123456
svnserve.conf:
#匿名訪問者權限
anon-access = none
#驗證用戶權限
auth-access = write
#密碼文件地址
password-db = /home/svn/game/passwd
#權限文件地址
authz-db = /home/svn/game/authz
#項目名稱(UUID)
realm =game
anon-access = none
#驗證用戶權限
auth-access = write
#密碼文件地址
password-db = /home/svn/game/passwd
#權限文件地址
authz-db = /home/svn/game/authz
#項目名稱(UUID)
realm =game
8.開放svn端口
默認是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
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.啟動SVN服務
svnserve -d -r /home/svn
-d:守護進程
-r:svn根目錄
假設服務端IP為192.168.1.100,那么如下設置后game的訪問目錄就為:
svn://192.168.1.100/game
10.安裝客戶端 TortoiseSVN
11.建立子目錄
在客戶端PC上找個目錄,用管理員帳戶從svn://192.168.1.100/game遷出game目錄,分別新建art,design,server,client 4個子目錄,然后提交。
這時候你可以用其他組的帳戶測試下是否正常使用了。
12.安裝好的svn服務端,默認是不會開機自啟動的,每次開機自己啟動會很麻煩,我們可以把它設成開機啟動
在vi /etc/rc.d/rc.local后添加
vi /etc/rc.d/rc.local
