一、 安裝svn并創(chuàng)建用戶(hù)做準(zhǔn)備工作:
假設(shè)您已經(jīng)按照UBUNTU上SVN的安裝與利用APACHE2的ssl訪(fǎng)問(wèn)(SVN系列配置一)配置好了svn訪(fǎng)問(wèn)。
利用上文中的方法創(chuàng)建兩個(gè)用戶(hù):manager和developer1
為project1創(chuàng)建目錄結(jié)構(gòu)如下:
project1
--trunk
--branches
--tags
二、配置用戶(hù)訪(fǎng)問(wèn)svn目錄權(quán)限
1、修改權(quán)限文件
在project1/conf目錄下有authz文件
#vim authz
在文件中加入:
[groups]
g_manager = manager
g_developer = developer1
[project1:/]
* = rw
[project1:/trunk]
@g_manager = r
@g_developer = rw
[project1:/tags]
manager = r
developer1 = r
說(shuō)明:
第一段分組將manager分為g¬_manager組 developer1分為g_developer組
第二段對(duì)庫(kù)project1根目錄做訪(fǎng)問(wèn)限制,所有用戶(hù)都有讀寫(xiě)權(quán)限
第三段對(duì)庫(kù)project1下的trunk目錄設(shè)置組權(quán)限,組都需要以@開(kāi)頭
第四段對(duì)庫(kù)project1下的tags目錄設(shè)置用戶(hù)權(quán)限
其中branches目錄沒(méi)有設(shè)置權(quán)限,那默認(rèn)權(quán)限與根目錄權(quán)限相同。
2、修改讓apache2支持權(quán)限文件
#vim /etc/apache2/mods-available/dav_svn.conf
<Location /svn>
DAV svn
SVNPath /home/svnroot
AuthType Basic
AuthName "project1 subversion repository"
AuthUserFile /home/svnroot/passwd
AuthzSVNAccessFile /home/svnroot/leefn.com/conf/authz
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
加入一行:AuthzSVNAccessFile /home/svnroot/project1/conf/authz
這樣就啟用了svn的目錄控制了。
重啟apache2,目錄權(quán)限就生效了。