ubuntu svn环境搭建

  • 1.安装apache 和 svn
 sudo apt-get install apache2
 sudo apt-get install subversion
 sudo apt-get install libapache2-svn
  • 2.添加组 和用户
sudo addgroup subversion
sudo usermod -G subversion -a www-data
  • 3.创建文件夹
 sudo mkdir /home/svn
 cd /home/svn
 sudo mkdir myproject
 sudo chown -R www-data:subversion myproject
  • 4.创建svn仓库
创建 SVN 文件仓库:
 sudo svnadmin create /home/svn/myproject
  • 5.配置权限
赋予组成员对所有新加入文件仓库的文件拥有相应的权限:
sudo chmod -R g+rws myproje
sudo chown -R www-data:subversion myproject
  • 6.http访问配置
要通过 WebDAV 协议访问 SVN 文件仓库,您必须配置您的 Apache 2 Web 服务器。您必须加入下面的代码片段到您的 /etc/apache2/mods-available/dav_svn.conf中:
 
<Location /svn/myproject>
DAV svn
#SVNPath /home/svn/myproject
SVNParentPath /home/svn/
AuthType Basic
AuthName "myproject subversion repository"
AuthUserFile /home/svn/passwd.conf
AuthzSVNAccessFile /home/svn/authz.conf
#<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
#</LimitExcept>
</Location>
如果需要用户每次登录时都进行用户密码验证,请将<LimitExcept GET PROPFIND OPTIONS REPORT>与</LimitExcept>两行注释掉。
 
  • 7.配置访问权限控制
增加AuthzSVNAccessFile /home/svn/authz.conf
编辑sudo vi /etc/apache2/mods-enabled/dav_svn.load
LoadModule dav_svn_module /usr/lib/apache2/modules/mod_dav_svn.so
LoadModule dav_module        /usr/lib/apache2/modules/mod_dav.so
LoadModule authz_svn_module /usr/lib/apache2/modules/mod_authz_svn.so

编辑 sudo vi /etc/apache2/mods-available/authz_svn.load
LoadModule authz_svn_module /usr/lib/apache2/modules/mod_authz_svn.so
LoadModule dav_module /usr/lib/apache2/modules/mod_dav.so
LoadModule dav_svn_module      /usr/lib/apache2/modules/mod_dav_svn.so

  • 8.重启apache
 sudo /etc/init.d/apache2 restart

  • 9.添加用户
第一次添加:sudo htpasswd -c /home/svn/passwd jack
之后添加 :sudo htpasswd -m /home/svn/passwd jack2

  • 10.配置用户权限
sudo vi /home/svn/authz.conf
[groups]
everyone = robert, tommy, songjy, zhengyong, orcus, zhangq
groupA = robert, zhangq
groupB = orcus, tommy
[projectA:/]
@groupA = rw
@everyone = r
zhangq=rw
[projectB:/]
@everyone = r
@groupB = rw

猜你喜欢

转载自benchild.iteye.com/blog/1900224