Ubuntu下SVN服务的搭建(apache2+svn)

本文详细介绍了如何在Ubuntu系统中搭建SVN服务,包括apache2的安装、subversion及svn-apache连接库的安装、创建svn用户组、建立svn仓库、配置apache以通过HTTP访问SVN服务,并给出了用户管理和授权的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.apache2的安装
sudo apt-get install apache2
2.安装subversion及svn-apache连接库
sudo apt-get install subversion
sudo apt-get install libapache2-svn
3.增加svn用户组,用于管理svn,并加入到www-data的apache组
sudo addgroup subversion
sudo usermod -G subversion -a www-data
4.创建svn仓库

一般可以将项目仓库建立到/home/svn目录
假设项目名为myproject,先建立空目录

sudo mkdir /home/svn
cd /home/svn
   sudo mkdir myproject
sudo chown -R root:subversion myproject
sudo svnadmin create /home/svn/myproject
sudo chmod -R g+rws myproject
5.配置apache,用http协议访问svn服务

在安装了libapache2-svn时会自动生成该文件
sudo vi /etc/apache2/mods-available/dav_svn.conf
编辑dav_svn.conf配置文件,内有注释,可以去掉前面的#使语句生效,最后内容大概如下即可:

<Location/svn> #/svn表示            http://hostname/svn/myproject
DAV svn
SVNParentPath /home/svn #配置仓库父目录
AuthType Basic
AuthName "ToFishes Project Svn"
AuthUserFile /etc/subversion/passwd #svn用户文件
AuthzSVNAccessFile /etc/subversion/authz #授权访问文件
Require valid-user
</Location>

svn用户文件/etc/apache2/dav_svn.passwd 和 授权访问文件/etc/apache2/dav_svn.authz是不存在的,需要手动创建。

svn用户文件可以通过命令创建:

首次创建需要加-c选项,同时可以增加一个svn用户
执行该命令会提示为新用户user_name设置密码

sudo htpasswd -c /etc/apache2/dav_svn.passwd user_name

以后添加新用户,需要去掉-c选项,否则以前的用户就被覆灭了

sudo htpasswd /etc/apache2/dav_svn.passwd new_name

用户是可以添加了,同时需要管理授权,用于多个svn项目,划分不同的用户组:

用vi /etc/apache2/dav_svn.authz编辑授权文件,无文件则编辑并保存后会自动创建,无需担心。

授权文件内容格式如下:

#用户组指令
[groups]
#格式为  组名 = 用户名1,用户名2
group1 = user1, user2
group2 = user1, user3
#other groups...
#格式为  svn项目的仓库名:对应目录
[svn_repository_name:/]
#设置组的权限,r=read, w=write
@group1= rw
[svn_repository_name2:/web/css]
@group2= rw
6.修改完最后重启apache
sudo /etc/init.d/apache2 restart

完全卸载apache2

sudo apt-get remove apache2*
sudo apt-get update
sudo apt-get install apache2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值