# Installing SVN
# Installing on Linux
# RHEL
$ yum install subversion
# The svnserve Server
配置文件在存储库的 conf 目录。
- svnserve.conf:服务配置文件。
- passwd:用户名口令配置文件。
- authz:权限配置文件。
# Understand the conf/svnserve.conf file
服务配置文件为版本库目录中的 conf/svnserve.conf。该文件仅由一个 [general] 配置段组成。
[general]
# 控制非鉴权用户访问版本库的权限
anon-access = none
# 控制鉴权用户访问版本库的权限
auth-access = write
# 指定用户名口令文件名
password-db = passwd
# 指定权限配置文件名
authz-db = authz
# 指定版本库的认证域
realm = Authorization SVN
# Understand the conf/passwd file
用户名口令文件由 svnserve.conf 的配置项 password-db 指定,默认为 conf 目录中的 passwd。该文件仅由一个 [users] 配置段组成。
[users]
admin = admin
thinker = 123456
# Understand the conf/authz file
权限配置文件由 svnserve.conf 的配置项 authz-db 指定,默认为 conf 目录中的 authz。该配置文件由一个 [groups] 配置段和若干个版本库路径权限段组成。
[groups]
g_admin = admin,thinker
[library:/]
@g_admin = rw
* = r
# The Apache HTTP Server
安装 Apache 服务:
- RHEL:
yum install httpd mod_dav_svn
创建配置文件 /etc/httpd/conf.d/subversion.conf:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /var/www/svn
AuthType Basic
AuthName "Authorization SVN"
AuthzSVNAccessFile /var/www/svn/authz
AuthUserFile /var/www/svn/passwd
Require valid-user
</Location>
密码管理:
$ htpasswd -c -m /var/www/svn/passwd huxins
权限:
$ chown -R apache:apache /var/www/svn