工具&利器

svn之仓库配置与用户配置资料整理

系统环境

liunx

http://gfllove.blog.163.com/blog/static/1515027201172495622885/

启动与关闭

svnserve -d -r /home/data/svn/ 启动 svn    解释:其中 -d 表示守护进程, -r 表示在后台执行

ps -ef|grep svnserve  关闭SVN 方式:杀死进程方式 如    root      4967     1  0 Aug23 ?        00:00:00 svnserve -d -r repository/    kill -9 4967杀死进程

 

仓库创建:

sudo svnadmin create /work/svn_test/

 

用户配置:  路径  svn/conf/ (在使用 svnadmin create 时会有 比如 svnadmin create /home/svn  那么你的配置文件就会在 /home/svn/conf )

(1)编辑svnserve.conf文件,编辑svnserve.conf文件。

anon-access:匿名用户的权限,可以为read,write和none,默认值read。不允许匿名用户访问:anon-access = none

auth-access:认证用户的权限,可以为read,write和none,默认值write。

password-db:密码数据库的路径,去掉前边的#

authz-db:认证规则库的路径,去掉前边的#。

注意:这些配置项的行都要顶格,否则会报错。修改配置后需要重启svn才能生效。
(2)编辑passwd文件,加入用户名和密码(如下为示例)

这是每个用户的密码文件,比较简单,就是“用户名=密码”,采用的是明码。如allen=1(apache模式下密码为经过加密的变化)

[users]
allen = 1
ellen = 1
test = 1

(3)编辑authz文件,配置用户访问权限(如下为示例)

1. [groups] section:为了便于管理,可以将一些用户放到一个组里边,比如:owner=allen,ellen

2. groups下边的sections表示对一个目录的认证规则,比如对根目录的认证规则的section为[/]。设置单用户的认证规则时一个用户一行,如:

[/]

allen=rw  #allen对根目录的权限为rw

ellen=r   #ellen对根目录的权限为r

如果使用group,需要在group名字前加@,如

@owner=rw  #group owner中的用户均为rw,等价于上边的两句话

启动时如果从/home/svn/one启动,/就是one目录,用如上方式以one目录为根设置权限。

如果从/home/svn/启动,每个仓库根还是自己的起始目录。可以采用如上方式设置astar的权限,也可以采用如下方式:

[one:/]  库的名字

@owner=rw

简言之,每个仓库的根目录(/)就是自己的起始目录;[repos:/]这种方式只适用于多仓库的情况;[/]适合于单仓库

 

发表评论