摘要
安装 httpd 服务
检查 httpd 是否安装成功
安装 svnserve 服务
1
| yum install subversion -y
|
检查 svnserve 是否安装成功
安装 mod_dav_svn
mod_dav_svn 是 apache 服务器访问 svn 的一个模块。通过 yum 安装
安装成功后,会有 mod_dav_svn.so 和 mod_authz_svn.so 两个文件。
1 2 3
|
ls /etc/httpd/modules | grep svn
|
创建 svn 仓库
1 2 3
| mkdir /home/svn svnadmin create /data/svn/repo ll /data/svn/project/
|
1 2 3 4 5 6
| drwxr-xr-x. 2 root root 51 Nov 10 14:42 conf drwxr-sr-x. 6 root root 4096 Nov 10 14:42 db -r--r--r--. 1 root root 2 Nov 10 14:42 format drwxr-xr-x. 2 root root 4096 Nov 10 14:42 hooks drwxr-xr-x. 2 root root 39 Nov 10 14:42 locks -rw-r--r--. 1 root root 229 Nov 10 14:42 README.txt
|
配置权限
创建用户文件和passwd
1 2 3 4 5 6
| touch /data/svn/passwd
htpasswd /data/svn/passwd admin
htpasswd /data/svn/passwd guest
|
1 2
| admin:$apr1$UCkPzZ2x$tnDk2rgZoiaURPzO2e57t0 guest:$apr1$vX1RIUq6$OKS1bqKZSptzsPDYUOJ5x.
|
创建权限文件authz
1 2
| cp /data/svn/project/conf/authz /data/svn/authz cat /data/svn/authz
|
1 2 3
| [/] admin = rw guest = r
|
配置 httpd
1 2
| touch /etc/httpd/conf.d/subversion.conf cat /etc/httpd/conf.d/subversion.conf
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /> DAV svn SVNListParentPath on SVNParentPath /data/svn AuthType Basic Satisfy Any AuthName "Subversion repos" AuthUserFile /data/svn/accesspwd AuthzSVNAccessFile /data/svn/authz Require valid-user </Location> <Location /project> DAV svn SVNListParentPath on SVNParentPath /data/svn/repo AuthType Basic Satisfy Any AuthName "Subversion repos" AuthUserFile /data/svn/accesspwd AuthzSVNAccessFile /data/svn/authz Require valid-user </Location>
|
启动 httpd 服务
1
| systemctl start httpd.service
|
客户端使用 http://ip/repo 就可以访问刚才建立的svn仓库了。
启动 svnserver
1
| svnserve -d -r /data/svn
|
修改 svn 根路径
1
| vi /etc/sysconfig/svnserve
|