svn权限配置方法

1、本文档适用于对Subvesion的自带服务svnserve进行权限配置,全部在authz文件中完成。2、如果要对含有中文的目录或文件进行管理或分配时,需要将该文件保存为UTF-8格式,   微软的记事本保存为UTF-8格式无效,所以不要用。可用如UltraEdit或EditPlus等软件完成,   保存时,格式应选择UTF-8 NO BOM。
3、权限分配时,应遵守从根目录到子目录、从设置最广泛权限到最精细权限、从只读权限到读写权限   设置原则,即从根目录开始设置最广泛的访问权限,然后逐步设置下属子目录的访问权限。   
         提示:目录的访问权限既可以分配给组,也可以分配指定用户。

现举例进行说明:
      启动服务:服务应指向所有版本库的根目录,本例中为D:\SVN,命令如下:sc create SVNService binpath= "D:\Subversion\bin\svnserve.exe --service -r D:/SVN" displayname= "SVNService" depend= Tcpip start= auto

      项目情况:D盘根目录下有一个文件夹SVN,在该文件夹中有jsyxv3、svntest两个版本库(可以有更多个),这些版本库共享使用同一个权限配置文件,目录结构如下:
D:\SVN
|---jsyxv3        (项目一,子目录略)
|---svntest        (项目二,子目录略)
|---authz          (共享的权限配置文件)
|---passwd        (共享的密码文件)

#=====配置开始=====
每个资源库conf里svnserve.conf文件
[general]
anon-access = none
auth-access = write
password-db = D:/SVN/passwd
authz-db = D:/SVN/authz
[sasl]

共享的passwd文件
[users]
sgl=sgl
aaa=aaa12aa
bbb=bbb123


共享的authz文件
#分组:
[groups]
group_admin = wws,aaa,bbb
group_user1 = sj,ccc
group_user2 = sy,dd,eeee
group_user3 = lxt
group_user4 = ss


#设置对根(即SVN)目录下,所有版本库的访问权限
[/]
* = r                #所有登录用户默认权限为只读
@group_admin = rw   #可以分配给组,该组有读写权限
wws = rw            #也可以像这样分配给指定用户


#以下将对各版本库的及其目录进行权限分配
[jsyxv3:/]            #设置对jsyxv3版本库中,所有项目的访问权限
* =                 #未授权用户没有任何权限
@group_user1 = rw


[jsyxv3:/程序管理]    #设置对jsyxv3版本库中程序管理目录的访问权限
* =                 #未授权用户没有任何权限
@group_user2 = rw


[jsyxv3:/项目管理]    #设置对jsyxv3版本库中项目管理目录的访问权限
* =                 #未授权用户没有任何权限
@group_user3 = rw
[svntest:/]            #设置对svntest版本库中,所有项目的访问权限
* =                 #未授权用户没有任何权限
@group_user1 = rw


[svntest:/程序管理]    #设置对svntest版本库中程序管理目录的访问权限
* =                 #未授权用户没有任何权限
@group_user2 = rw
@group_user3 = rw


[svntest:/项目管理]    #设置对svntest版本库中项目管理目录的访问权限
* =                 #未授权用户没有任何权限
@group_user4 = rw

#=====配置结束=====


4、最后重要提示:   
        4.1、启动的服务与客户端检出的关系:     
             4.1.1、如果启动的服务指向一个具体的版本库,如红字部分描述:       
                         sc create SVNService binpath= "D:\Subversion\bin\svnserve.exe --service -r D:/SVN/svntest" displayname= "SVNService" depend= Tcpip  start= auto ,则客户端检出的地址应为:svn://192.168.0.1/    
              4.1.2、如果启动的服务指向的是多个版本库的父目录,如红字部分描述:       
                          sc create SVNService binpath= "D:\Subversion\bin\svnserve.exe --service -r D:/SVN" displayname= "SVNService" depend= Tcpip start= auto,则客户端检出的地址应为:svn://192.168.0.1/svntest    
          
         4.2、如果权限管理完成时,对各版本库还未完成导入工作,请记得使用对SVN目录有读写权限的        
                  用户身份进行操作,否则有可能会提示操作失败(因为权限不够)。

原文地址:http://zhidao.baidu.com/question/118755588.html



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值