Ubuntu12.04配置Svn+Apache的版本控制服务器

来源:互联网 发布:中信淘宝会员信用卡 编辑:程序博客网 时间:2024/05/19 04:07

转自http://www.cnblogs.com/standsun/archive/2012/08/10/2631334.html


" 安装apache2sudo apt-get install apache2" 安装apache的svn扩展模块sudo apt-get install libapache2-svn" 安装subversionsudo apt-get install subversion" 创建版本库保存的文件家sudo mkdir /home/subversion" 创建项目的版本库sudo svnadmin create /home/subversion/project" /etc/apache2/http.conf 末尾添加project的配置<Location /project>    DAV svn    SVNPath /home/subversion/project    AuthType Basic    AuthName "project description"    AuthUserFile /home/subversion/project/conf/passwd    <LimitExcept GET PROPFIND OPTIONS REPORT>   " 如果想每次登陆都输入密码请把这个标签对引掉    Require valid-user    </LimitExcept></Location>" 重启apachesudo service apache2 restart" 添加版本库的访问帐号sudo htpasswd -c /home/subversion/project/conf/passwd admi
复制代码

附上Apache默认的Svn配置示例

复制代码
" dav_svn.conf - Example Subversion/Apache configuration"" For details and further options see the Apache user manual and" the Subversion book."" NOTE: for a setup with multiple vhosts, you will want to do this" configuration in /etc/apache2/sites-available/*, not here." <Location URL> ... </Location>" URL controls how the repository appears to the outside world." In this example clients access the repository as http://hostname/svn/" Note, a literal /svn should NOT exist in your document root.<Location /svn>    " Uncomment this to enable the repository    DAV svn    " Set this to the path to your repository    "SVNPath /var/lib/svn    " Alternatively, use SVNParentPath if you have multiple repositories under    " under a single directory (/var/lib/svn/repo1, /var/lib/svn/repo2, ...).    " You need either SVNPath and SVNParentPath, but not both.    SVNParentPath /var/lib/svn    " Access control is done at 3 levels: (1) Apache authentication, via    " any of several methods.  A 'Basic Auth' section is commented out    " below.  (2) Apache <Limit> and <LimitExcept>, also commented out    " below.  (3) mod_authz_svn is a svn-specific authorization module    " which offers fine-grained read/write access control for paths    " within a repository.  (The first two layers are coarse-grained; you    " can only enable/disable access to an entire repository.)  Note that    " mod_authz_svn is noticeably slower than the other two layers, so if    " you don't need the fine-grained control, don't configure it.    " Basic Authentication is repository-wide.  It is not secure unless    " you are using https.  See the 'htpasswd' command to create and    " manage the password file - and the documentation for the    " 'auth_basic' and 'authn_file' modules, which you will need for this    " (enable them with 'a2enmod').    AuthType Basic    AuthName 'Subversion Repository'    AuthUserFile /etc/apache2/dav_svn.passwd    " To enable authorization via mod_authz_svn    AuthzSVNAccessFile /etc/apache2/dav_svn.authz    " The following three lines allow anonymous read, but make    " committers authenticate themselves.  It requires the 'authz_user'    " module (enable it with 'a2enmod').    "<LimitExcept GET PROPFIND OPTIONS REPORT>    Require valid-user    "</LimitExcept></Location>


原创粉丝点击