本文介绍在ubuntu 11.04下配置svn,并通过http协议来访问svn。
一. 安装及准备
首先安装svn
sudo apt-get install subversion subversion-tools
假设以后代码库放在/home/svn
sudo mkdir /home/svn
将svn目录owner更改为www-data,因为apache2是以www-data用户身份运行的.
chown www-data /home/svn/ -R
二. 配置svn
创建库
sudo svnadmin create /home/svn
尝试导入文件
svn import /home/zealot/project/helloworld
file:///home/svn-m "svn可以
work了"
看下导入的结果
svn list
file:///home/svn 如果可以看到helloworld说明svn开始工作。
三. 配置http dev访问
首先要安装apache2和apache 的一个支持svn的模块。
sudo apt-get install apache2 mod_dav_svn
然后打开/etc/apache2/mods-available/dav_svn.conf
阅读一下文件的注释,很容易理解,我的配置如下:
<Location /svn>
DAV svn
SVNPath /home/svn
AuthType Basic
AuthName "欢迎来到xxx的代码库"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
</Location>
大致意思就是启用一个虚拟目录(http dav)叫svn,对应文件系统下
的/home/svn ,采用http验证方式授权,授权文件是
/etc/apache2/dav_svn.passwd,Require valid-user表示不能匿名访问,保
存后,创建这个授权文件。
sudo htpasswd -c /etc/apache2/dav_svn.passwd user1
按提示输入两次密码。 重启apache2
sudo /etc/init.d/apache2 restart
尝试用浏览器访问
http://127.0.0.1/svn如果没问题的话会要求输入用户名
密码,登录后应该能看到刚才导入helloworld