【SVN教程】(1)搭建SVN服务器
安装步骤
安装环境
- 系统: Ubuntu 24.04.1
1.安装apache2和svn server
shell
sudo apt install subversion apache2 libapache2-mod-svn
2.创建svn版本库
shell
sudo mkdir -p /var/svn/repos
sudo svnadmin create /var/svn/repos/test-repo
3.配置authz和passwd
- 复制一份到svn目录,统一管理
shell
cd /var/svn
sudo cp repos/test-repo/conf/authz authz
sudo cp repos/test-repo/conf/passwd passwd
- 配置authz和passwd: 根据自己的需要配置
4.配置svnserve.conf
ini
[general]
anon-access = none
auth-access = write
password-db = ../../../passwd
authz-db = ../../../authz
5.配置目录权限
shell
sudo chown -R www-data:www-data /var/svn/repos
sudo chmod -R 755 /var/svn/repos
6.启动svnserve服务
shell
sudo svnserve -d -r /var/svn/repos
7.配置apache2的svn
shell
sudo vim /etc/apache2/mods-available/dav_svn.conf
xml
<Location /svn>
DAV svn
SVNParentPath /var/svn/repos
SVNAdvertiseV2Protocol Off
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /var/svn/pwdfile
AuthzSVNAccessFile /var/svn/authz
Require valid-user
</Location>
8.配置http的密码
- 注意需要和authz的相同
shell
sudo htpasswd -c /var/svn/pwdfile admin
9.重启apache服务
shell
sudo service apache2 restart
10.访问
配置开机自启
1.创建新的服务文件
shell
sudo vim /etc/systemd/system/svnserve.service
- 配置内容如下
ini
[Unit]
Description=Subversion Server
After=network.target
[Service]
Type=forking
ExecStart=/usr/bin/svnserve -d -r /var/svn/repos
ExecStop=/bin/kill -TERM $MAINPID
[Install]
WantedBy=multi-user.target
2.启用服务
shell
sudo systemctl daemon-reload
sudo systemctl enable svnserve
sudo systemctl start svnserve
sudo systemctl status svnserve