1. 安裝SVN
yum list svn*
yum install subversion
2. 測試SVN安裝
svnserve --version
3. 創(chuàng)建三個代碼倉庫
svnadmin create /usr/svnhome/project1
svnadmin create /usr/svnhome/project2
svnadmin create /usr/svnhome/project3
4. 切換目錄到/usr/svnhome/project1/conf目錄下
cd/projcet1/conf
5. 復(fù)制project1文件中的authz、passwd兩個文件拷貝到SVN倉庫的根文件夾
cp authz passwd /usr/svnhome/
6. 修改svnserve.conf文件
vim svnserve.conf
修改成如下:
anon-access = none //禁止匿名訪問
auth-access = write
password-db = /usr/svnhome/passwd //統(tǒng)一使用密碼文件
authz-db = /usr/svnhome/authz
realm = project1 //權(quán)限域名,很重要,寫你的工程名
7. 同理修改project2、project3兩個目錄的配置文件,只修改realm這個屬性即可
8. 修改主密碼文件
vim /usr/svnhome/passwd
[users]
test = test
9. 修改權(quán)限文件
vim /usr/svnhome/authz
[/] //管理者擁有所有讀寫權(quán)限
test = rw
10. 重起SVN服務(wù)器
killall svnserve // 殺死SVN服務(wù)器
svnserve -d -r /usr/svnhome/svn
11. 放行SVN服務(wù)器的端口防火墻
刪除無效的防火墻配置:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
按以下方法設(shè)置防火墻:
/sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT
/etc/rc.d/init.d/iptables save
配置后查看:
/etc/init.d/iptables status
客服端telnet成功,svn也可以訪問了。
telnet domain.name 3690
下面是具體用戶權(quán)限的配置:
修改兩個權(quán)限管理文件:
passwd
//用戶名 = 密碼
[users]
eg1 = 123
eg2 = 123
eg3 = 123
eg4 = 123
eg5 = 123
eg6 = 123 /p>
p>authz
[groups] //分組
admin = eg1,eg2
guest = eg3,eg4
guset1 = eg5,eg6
[/] //管理者擁有所有讀寫權(quán)限
* =
@admin = rw
[project1:/] //工程1的訪問控制,guest1,2無法訪問
@admin = rw
或
eg1 = rw
eg2 = rw
[project2:/]
@guest = rw
或
eg3 = rw
eg4 = rw
[project3:/]
@guest1 = rw
或
eg5 = rw
eg6 = rw