步骤大致参照:http://icedot.blog.51cto.com/61369/493852
1. 安装
sudo apt-get install apache2 // 可能需要
sudo apt-get install subversion
sudo apt-get install libapache2-svn
重启apache2:/etc/init.d/apache2 restart
2. 配置组
sudo addgroup subversion //创建一个叫subversion的组为拥有仓库所在的目录sudo usermod -G subversion -a www-data //将自己和“www-data”(Apache 用户)加入组成员中
3. 创建库
sudo mkdir /home/svn //新建svn库的目录
sudo svnadmin create /home/svn/test_project //创建SVN库
4. 修改目录权限
sudo chown -R root:subversion /home/svn/test_project
sudo chmod -R g+rws /home/svn/test_project //赋予组成员对所有新加入文件仓库的文件拥有相应的权限
查看权限:
ls -l /home/svn/myproject/db/txn-current-lock
5. 配置apache2,使用http方式访问
修改 /etc/apache2/mods-available/dav_svn.conf
sudo vim /etc/apache2/mods-available/dav_svn.conf
加入以下代码:
================================
<Location /svn/test_project> #http://localhost/svn/test_project
DAV svn
SVNPath /home/svn/test_project
AuthType Basic
AuthName "project subversion repository"
AuthUserFile /etc/subversion/passwd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
如果需要用户每次登录时都进行用户密码验证,就将<LimitExcept GET PROPFIND OPTIONS REPORT>与</LimitExcept>两行注释掉
加入代码后重启apache2
=================================
6. 设置可以访问http://localhost/svn/test_project的用户名及密码
sudo htpasswd -c /etc/subversion/passwd username //第一次添加用户使用参数“-c”以后再添加就不用了
至此,在浏览器中输入http://localhost/svn/test_project 会弹出登录框,输入用户名和密码即可查看代码。
其他更多访问方式,可以参考:http://blog.youkuaiyun.com/duanbeibei/article/details/5890436
模式 | 访问方法 |
file:/// | 直接访问本地硬盘上文件仓库 |
http:// | 通过 WebDAV 协议访问支持 Subversion 的 Apache 2 Web 服务器 |
https:// | 类似 http://,支持 SSL 加密 |
svn:// | 通过自带协议访问 svnserve 服务器 |
svn+ssh:// | 类似 svn://,支持通过 SSH 通道 |
SVN命令详解,可以参考: http://zhan.renren.com/itbegin?gid=3602888498033631485&checked=true
客户端可以使用:RapidSVN、kdesvn、RabbitVCS(推荐这个,类似小乌龟)、Subclipse(eclipse的svn插件)
RabbitVCS离线安装文件: http://ppa.launchpad.net/rabbitvcs/ppa/ubuntu/pool/main/r/rabbitvcs/