搭建Subversion

1
apt -y install apache2

检查 apache 是否安装成功

1
systemctl status apache2.service
1
apt -y install subversion

检查 svnserve 是否安装成功

1
svnserve --version

安装 mod_dav_svn

mod_dav_svn 是 apache 服务器访问 svn 的一个模块。

1
apt install libapache2-mod-svn
1
2
3
mkdir /data/svn
svnadmin create /data/svn/project
chown -R www-data.www-data /data/svn

创建用户文件和 passwd

1
2
3
4
5
6
# 创建用户文件
touch /data/svn/passwd
# 创建用户admin
htpasswd /data/svn/passwd admin
# 创建用户guest
htpasswd /data/svn/passwd guest

创建权限文件 authz

1
cp /data/svn/project/conf/authz /data/svn/authz

配置 apache

1
vi /etc/apache2/mods-available/dav_svn.conf
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
<Location />
    DAV svn
    SVNPath /data/svn
    AuthType Basic
    AuthName "Subversion repos"
    AuthUserFile /data/svn/accesspwd
    AuthzSVNAccessFile /data/svn/authz
    Require valid-user
</Location>
<Location /project>
    DAV svn
    SVNPath /data/svn/project
    AuthType Basic
    AuthName "Subversion repos"
    AuthUserFile /data/svn/accesspwd
    AuthzSVNAccessFile /data/svn/authz
    Require valid-user
</Location>

重启 apache 服务

1
systemctl restart apache2.service

客户端使用 http://ip/repo 就可以访问刚才建立的svn仓库了。

启动 svnserver

1
svnserve -d -r /data/svn