2015年9月11日 18:48:39
大多数程序员只需要知道如何使用svn客户端即可,但如果你是管理人员,项目负责人,就不得不对svn用户进行权限管理。
假设创建的仓库路径为:D:\SVNLibrary
===>取消匿名登陆:
打开文件D:\SVNLibrary\conf\svnserve.conf
找到:###anon-access = read
将前面的注释去掉,并将read 改为:none
即:anoe-access=none 表示匿名登陆下的用户权限为空。系统不支持匿名登陆。
说明:
auth-access = write #通过验证的用户可以读和写
auno-access = read #匿名登陆下可以只读文件,但文件修改后无法提交到服务器。
password-db =password #用户保存文件的名称
authz-db =authz #权限管理文件 这个是非常重要的,如果我们要对整个工程的文件进行权限分配的时候,就必须将这个行文件前面注释掉,否咋即使我们在权限配置文件里面进行再多的配置都是无效的。
然后在authz 文件下面进行权限的分配:
在权限分配的时候要注意的问题:
===>对某个用户,如果只赋给他某个目录的权限,但对上级目录没有赋给,则他不能有上级目录的任何权限
例如某个用户有:/repository/project1的r权,而没有/repository的r权
===>对于所有的目录,都优先处理设置在这个目录上的权限设置。
例如sai用户:
[/repository]
sai = rw
对于repository目录,他有rw的权限。
[/repository/project1]
sai = r
对于repository下的project1目录,他只有r权限。
则,这个saiy用户只有project1的r权。而repository下其他目录有rw权。
===>权限分配,只可以分配到某个目录,而不能到某个文件。
===>如果某个目录上没有对某个用户设置权限,则一直向上级目录查找,看是否有权限
例如wu用户
[/repository]
wu=rw
[/reposi