通过 WebDAV 协议访问版本库(http://)

以ubuntu server 8.10为例

1. 安装svn的apache2模块

sudo apt-get install libapache2-svn

安装完成后修改/etc/apache2/mods-enabled/dav_svn.conf文件

2. 创建不同目录下的版本库

举个例子,如果你知道你会在/home/svnuser/svn下创建了report版本库,并且通过类似http://my.server.com/report的url访问,你可以用后面例子中的httpd.conf配置语法

<Location /report>

DAV svn

SVNPath /home/svnuser/svn/report

AuthType Basic

AuthName "myproject subversion repository"

AuthUserFile /etc/subversion/passwd

Require valid-user

</Location>

3. 如果你计划支持多个具备相同父目录的版本库,你有另外的选择SVNParentPath指示,来表示共同的父目录。举个例子,如果你知道你会在/home/svnuser/svn下创建多个版本库,并且通过类似http://my.server.com/svn/report1http://my.server.com/svn/report2的url访问,你可以用后面例子中的httpd.conf配置语法

<Location /svn>

DAV svn

SVNParentPath /home/svnuser/svn

AuthType Basic

AuthName "myproject subversion repository"

AuthUserFile /etc/subversion/passwd

Require valid-user

</Location>

说明:这通常是个便利的做法,不像是用SVNPath指令,我们在此不必为创建新的版本库而重启apache了

您必须重新起动 Apache 2 Web 服务器,请输入下面的命令:

sudo /etc/init.d/apache2 restart

4. 用户认证

接下来,您需要创建 /etc/subversion/passwd 文件,该文件包含了用户授权的详细信息。要添加用户,您可以执行下面的命令:

sudo htpasswd -c /etc/subversion/passwd user_name

它会提示您输入密码,当您输入了密码,该用户就建立了

如果是添加用户去掉-c参数就行了

sudo htpasswd /etc/subversion/passwd user_name

您可以通过下面的命令来访问文件仓库:

$ svn co http://hostname/svn/myproject

它会提示您输入用户名和密码。您必须输入您使用 htpasswd 设置的密码。当通过验证,项目的文件就被签出了

posted @ 2011-07-24 23:07  科学家会武术  阅读(859)  评论(0编辑  收藏  举报