首页 > 代码库 > svn 版本库管理快速搭建

svn 版本库管理快速搭建

众所周知,Subversion有两种运行方式,一种是基于HTTP,另一种是基于Subversion Standalone Server的。本文的目的是要配置一个基于Apache HTTP服务器的SVN服务器。这样的服务器有以下几个好处:

1、能使用WebDAV协议;

2、能使用浏览器作为客户端工具浏览源码库;

3、支持SSPI和LDAP认证;

4、能获得Apache的安全认证支持,如:SSL连接等。



一、SVN安装


安装方式:yum install 


        安装如下模块:


        yum install httpd httpd-devel   


        yum install subversion 


        yum install mod_dav_svn 


        必须安装mod_dav_svn模块。



安装成功后,可用svn --version命令验证。



二、Apache配置


一定要保证下面的两句话存在于apache配置文件(/etc/httpd/conf/httpd.conf)中,否则将无法加载svn模块:


        LoadModule dav_svn_module     modules/mod_dav_svn.so

      LoadModule authz_svn_module   modules/mod_authz_svn.so 




三、SVN配置


1、代码仓库目录配置


代码仓库就是存放代码目录结构的服务器目录,我们在/var/local下新建一个svn目录,这样/var/local/svn就可以作为所有项目的根目录。


以test为例,来配置Subversion:


# mkdir -p /var/local/svn

# cd /var/local/svn

# svnadmin create test 


创建完成后,可以看到生成了test的目录。


 2、用户权限配置


用户权限配置在/svn/auth/access.conf

认证配置文件在/svn/auth/authz.conf(直接新建)


添加用户组和权限(具体方式不细说)。


3、生成用户密码文件


因为Apache基于HTTP传输的密码是加密的,所以需要用htpasswd命令来建立用户文件,并对密码进行加密。


# htpasswd -m /svn/auth/authz.conf  testusername




四、Apache配置文件


修改/etc/httpd/conf/httpd.conf文件,为末尾加上:


<Location />


   DAV svn


     SVNPath /usr/local/svn/test/


     AuthType Basic


   AuthName "svn for test"


     AuthUserFile /svn/auth/authz.conf


   AuthzSVNAccessFile /svn/auth/access.conf


     Require valid-user


</Location>



重启Apache服务器,打开浏览器输入:http://ipaddress/test,就可以看到效果了。 


本文出自 “Lonely(技术群:1991706)” 博客,请务必保留此出处http://304076020.blog.51cto.com/7503470/1436643