我最近建立了一个带有身份验证的svn回购。
我们的个人电脑用户正在使用乌龟SVN,并能够结帐,提交等。
我们的Mac用户正在使用SmartSVN,当尝试签出时,他们会得到以下错误:
Repository moved permanently; please relocate OPTIONS
request failed on'/'我在最初用tortoisesvn设置它时遇到了这个问题,解决方案是确保sure不是www目录的子目录。所以我把它放在主目录里
主目录如下所示:
/public_html
/repos
/wwwvhost 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上使用MacOS时尝试签出。
日志中没有任何与此相关的错误。
编辑:澄清所有用户都在用url格式签出repos,如:
http://svn.myserver.com/repos/REPONAME发布于 2013-05-08 13:13:00
最初,我们的svn使用的是单个存储库,我们将其更改为使用存储库的集合。我们仍然使用相同的子域"svn.server.com“,主要区别是我们的集合现在是svn.server.com/repos/。
SmartSVN存储了旧的url "svn.server.com“,在结帐时似乎忽略了新提供的url (svn.server.com/repos/TEST)
解决办法很简单。
SmartSVN > Preferences > Authentication删除旧记录,然后再次尝试签出。
发布于 2013-05-06 22:49:04
PC和Mac用户都可以在浏览器中使用适当的身份验证来查看存储库。
浏览器在你的情况下不是最好的测试工具。基于CLI的SVN客户端将提供更多有关问题的详细信息。
在您的例子中,Mac用户(我想)尝试读取存储库根,而不是存储库(可以在浏览器中只读取配置中的和配置中的SVNListParentPath On,就像您所做的那样)。任何在任何操作系统上的SVN客户端(对于当前稳定的1.7) 都不能读取SVNParentPath (承诺在1.8中修改),必须使用
svn ls SERVER/repos/REPONAME作为单个存储库的最小根级
https://stackoverflow.com/questions/16406920
复制相似问题