您的位置:首页 > 其它

使用WANdisco,搭建SVN服务器(包括多个SVN账号配置)

2013-09-23 23:12 507 查看
【1】安装 WANdiscoSubversion_1.8.3-2.exe,下载:http://download.csdn.net/detail/lisq037/6310161



设置好端口号以及SVN库路径。

【2】建立版本库
在cmd命令框内输入:
svnadmin create d:\svn\repository

【3】在建好的版本库中,修改配置参数。

(1)在d:\svn\repository\conf\svnserve.conf中,修改以下参数:

auth-access = write

password-db = passwd

authz-db = authz

realm = testproject


说明:
"auth-access
= write",验证用户权限为:读写。

"password-db = passwd",用户密码文件(配置允许访问的svn用户及密码)指向: 同目录的passwd。因为WANdisco是基于apache,所以同目录的passwd为无效的配置文件。

"authz-db = authz",权限配置文件指向:同目录的authz。权限配置文件会更改用户密码文件中定义的默认权限。

"realm = testproject",版本库标识符,在权限配置文件中会用到。

(2)在d:\svn\repository\conf\authz中,修改权限参数:

[groups]
admin =  harry,sally,lisq

[/]
@admin = rw

[testproject:/]
@admin = rw


用户组格式:

[groups]

<用户组名> = <用户1>,<用户2>

其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。

版本库目录格式:

[<版本库>:/项目/目录]

@<用户组名> = <权限>

<用户名> = <权限>

其中,方框号内部分可以有多种写法:

/ 表示根目录及以下。根目录是svnserve启动时指定的,我们指定为E:\svn。这样,/就是表示对全部版本库设置权限。

结合以上所述,创建的版本库repository,及其svnserve.conf配置文件中"realm = testproject"

testproject:/ 表示对版本库repository设置权限

testproject:/abc 表示对版本库repository中的abc项目设置权限

testproject:/abc/aaa 表示对版本库repository中的abc项目的aaa目录设置权限

版本库标识符(repository's uuid)的作用,当两个版本库使用同一个权限配置文件时候,用于区分不同的版本库。

权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。

【4】权限用户密码控制
D:\svn\WANdisco\Subversion\Apache2\conf\subversion.conf

<VirtualHost *:8080>
KeepAlive On
<Location /svn>
DAV svn
SVNParentPath "D:\svn"
# SVNParentPath and authz fix http://subversion.tigris.org/issues/show_bug.cgi?id=2753 RedirectMatch ^(/svn)$ $1/
AuthType Basic
AuthName "Subversion o2o repositories!Login needed!"
# If you didn't specify a password file during installation the
# next line needs to be configured for user authentication.
AuthUserFile "d:\svn\WANdisco\Subversion\passwd"
AuthzSVNAccessFile "d:\svn\repository\conf\authz"
Require valid-user
#Order allow,deny
#Allow from all
SVNAutoversioning on
</Location>
# Enable Subversion logging
CustomLog logs/subversion.log combined
</VirtualHost>


【5】生成SVN账号、密码
在cmd命令窗口中转入到d盘(这样生成的文件容易找到),输入命令:htpasswd
-c username userpassword
在确认两次密码后,将生成新的账号、密码文件,拷贝到
d:\svn\WANdisco\Subversion\


注意:
1、如果需要创建多个SVN账号,则使用htpasswd
username userpassword
2、SVN账号密码文件需要拷贝到这个目录下:
d:\svn\WANdisco\Subversion\


3、需要在authz中配置相应的SVN账号分组。

【6】自此,SVN服务器搭建成功。
访问地址形如:http://xxx/svn/repository/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: