我最近设置了一个 SVN 服务器,使用 http 作为传输协议(apache2、dav_svn 等)。该服务器似乎运行良好。我还创建了一个 authz 文件和各种用户。现在我想调试一下我的配置是否按预期工作。
当我通过 Web 浏览器以不同用户(“admin”/“user”)身份访问 svn 时,我可以看到预期的目录。没问题。我猜服务器配置是正确的。
然而,当我在客户端机器(Mac)上使用 shell 上的 svn 工具时,我遇到了一些非常奇怪的事情:
svn co hxxp://[email protected]/mysvn userdir
... 返回用户应该看到的正确目录或文件。
svn co hxxp://[email protected]/mysvn admindir
... 返回管理员应该看到的正确目录或文件。
我删除 userdir 并重新运行
svn co hxxp://[email protected]/mysvn userdir
...现在用户可以访问所有文件;也可以访问那些她不应该看到的文件。
我再次在 Web 浏览器中检查,发现一切都符合预期。我有点困惑。这是 svn 工具客户端的某种奇怪的缓存问题吗?我该如何清除缓存?
我使用 Google 搜索了很多次以寻找解决方案,但没有一个能够解决我的问题。
答案1
因此看起来 svn co 命令的语法有错误。
它似乎正在与
svn co --用户名 user hxxp://abcd/mysvn/ userdir