我正在尝试使用HTTP协议访问我在本地计算机上创建的SVN存储库(使用svnadmin),但我无法确定URL。我需要提供额外的配置来访问它作为HTTP吗?我使用SVN协议访问它没有问题。我只是想做一些性能调整并比较协议。有任何想法吗?用于创建回购的命令如下。
存储库创建和服务器启动命令:
$cd
$svnadmin create my-repository
$svnserve -d -r /Users/myusername
SVN:
$ svn info svn://localhost/my-repository
Path: my-repository
URL: svn://localhost/my-repository
Relative URL: ^/
Repository Root: svn://localhost/my-repository
Repository UUID: 2de7b13c-0139-45f6-a121-4d8cc6918849
Revision: 86
Node Kind: directory
Last Changed Rev: 86
Last Changed Date: 2013-12-04 11:58:03 -0800 (Wed, 04 Dec 2013)
HTTP:
$ svn info http://localhost/my-repository
svn: E120108: Unable to connect to a repository at URL 'http://localhost/my-repository'
svn: E120108: Error running context: The server unexpectedly closed the connection.
答案 0 :(得分:3)
您需要setup Apache httpd with mod_dav_svn。
一般情况下,svnserve会比httpd更快。 httpd更受欢迎,因为最初svnserve不支持加密,除非通过ssh隧道(现在通过SASL),并且它不支持几乎同样多的身份验证方法(SASL支持再次改变了这一点)。
httpd具有svnserve的唯一主要功能是不能直接使用Web浏览器浏览存储库(请注意,这与使用viewvc浏览时不同)。
httpd的一个好处是,由于它使用HTTP,因此通常无需特殊配置即可通过防火墙。它也可以代理(允许缓存代理来帮助加快速度)。