SmartSVN存储库永久移动

时间:2013-05-06 20:40:32

标签: apache svn smartsvn

我最近设置了一个带身份验证的svn repo。

我们的PC用户正在使用陆龟SVN并能够结帐,提交等。

我们的Mac OS用户正在使用SmartSVN,在尝试结帐时会出现以下错误:

Repository moved permanently; please relocate OPTIONS
request failed on'/'

我最初使用tortoisesvn进行设置时遇到了这个问题,并且解决方案是确保svn repo不是www目录的子代。所以我把它放在主目录

主目录如下所示:

/public_html
/repos
/www

vhost conf文件如下所示:

<IfModule mod_dav_svn.c>
 <Location /repos/>
  DAV svn
  SVNParentPath /data/svn/repos/
  SVNListParentPath On
  AuthType Basic
  AuthName "SVN Repository"
  AuthUserFile /data/svn/.htpasswds/.svn.htpasswd
  AuthzSVNAccessFile /data/svn/.htpasswds/.svn.authz
  Require valid-user
 </Location>
</IfModule>

PC和Mac用户都可以在浏览器中使用正确的身份验证查看存储库。唯一的问题是在MacOS上使用SmartSVN时尝试结帐。

我可以看到日志中没有任何与之相关的错误。

修改:澄清 所有用户都使用以下网址格式检出repos:

http://svn.myserver.com/repos/REPONAME

2 个答案:

答案 0 :(得分:0)

  

PC和Mac用户都可以在浏览器中使用正确的身份验证来查看存储库

您的案例中的浏览器不是最好的测试工具。基于CLI的SVN客户端将提供有关问题的更多详细信息

在你的情况下,Mac用户(我假设)试图读取存储库根目录,而不是存储库(在浏览器中可能在配置中使用SVNListParentPath On,你有)。任何操作系统上的任何SVN客户端(当前稳定版1.7)无法读取SVNParentPath (承诺在1.8中更改),必须才能使用

svn ls SERVER/repos/REPONAME作为单个存储库

的最低根级别

答案 1 :(得分:0)

最初我们的svn使用单个存储库,我们将其更改为使用存储库集合。我们仍在使用相同的子域名&#34; svn.server.com&#34;主要区别是我们的系列现在是svn.server.com/repos /

SmartSVN存储了旧网址&#34; svn.server.com&#34;并且在结账时似乎忽略了新提供的URL(svn.server.com/repos/TEST)

解决方案很简单。

SmartSVN > Preferences > Authentication

删除旧记录,然后尝试再次结帐。