liunx下SVN的权限配置

 最近帮助公司新的开发团队搭建SVN环境,在配置权限的时候卡了好久,稍微记录一下。

1.首先启动SVN  svnserve -d -r /home/svnroot/repository/code

 2.更改code/conf目录下的svnserve.conf文件,一定要将默认配置中的#号去掉

 

[general]
anon-access = none  //表示匿名用户不能操作
auth-access = write   //验证用户可写
password-db = passwd //用户信息所在的文件
authz-db = authz.conf  //权限设置所在的文件

3.修改authz.conf 权限配置文件,需要管理的SVN目录权限大致如下:

 

code

| ——iphone

| ——android

| ——system

| ——doc

| —— unity

           |——project

           |——bak

 

同时iphone目录只能A用户读写,android目录B用户读写,system目录C用户读写,unity/project目录D用户读写,unity/bak目录E用户读写,doc目录所有用户都能读写,authz.conf配置文件如下:

[groups]
G_A=A
G_B=B
G_C=C
G_D=D
G_E=E

[/]
*=r

[/iphone]
@G_A= rw
*=

[/android]
@G_B= rw
*=

[/system]
@G_C= rw
*=

[/unity]
@G_D=rw
@G_E=rw
*=

[/unity/project]
@G_D= rw
*=

[/unity/bak]
@G_E = rw
*=

[/doc]
*=rw

注:G_A=A表示用户组GA下有A用户,如果有多个用户用逗号隔开,*=表示除上面的用户组外其它人都没有读写的权限;在配置unity下的project和bak时,如果不配置unity目录,则所有人默认都能看到unity,因此要按层级结构先配置父目录再配置子目录,从而达到精细控制。

另:如果authz的权限配置文件书写格式有错误可以在svn的安装目录下tools/server-side/svnauthz-validate命令来校验格式错误的地方

svnauthz-validate /home/svnroot/repository/code/conf/authz.conf

猜你喜欢

转载自15901458930.iteye.com/blog/2234557