Subversion over HTTP,哪个命令会导致以下请求?

Subversion over HTTP, which command results in the following requests?

我目前正在调试我没有源代码的专有第三方 svn 客户端的问题(我相信它围绕标准 svn 命令运行并且用户代理匹配那)。当被要求分析我们的 repo 时,它会向我们的服务器发出以下 14 个请求

OPTIONS /svn/myrepo
OPTIONS /svn/myrepo
OPTIONS /svn/myrepo
PROPFIND /svn/myrepo/!svn/rvr/1
OPTIONS /svn/myrepo
PROPFIND /svn/myrepo
--------------------------------
OPTIONS /svn/myrepo
OPTIONS /svn/myrepo
OPTIONS /svn/myrepo
OPTIONS /svn/myrepo
OPTIONS /svn/myrepo
PROPFIND /svn/myrepo/!svn/rev/0
PROPFIND /svn/myrepo/!svn/rev/1
REPORT /svn/myrepo/!svn/rev/1

我相信我已经将前六个确定为 svn info URL,这是有道理的。

但是,我无法弄清楚是哪个 svn 命令导致了剩余的 8 个请求。最后一个 REPORT 请求一个 replay-report 并收到一个 editor-report (其中立即包含 textdelta)。如果我做一个常规的 svn co URL 它要求一个 update-report 并收到一个 update-report (它不包含 textdelta,但是一个 D:href 导致 GET).

有谁知道哪个 svn(或可能 svnsync)命令和参数引起了请求?这将有助于缩小本地问题的范围。

启用高级操作日志,运行您的自定义客户端并检查日志。您应该看到与 SVN 客户端操作相对应的事件。以下是一些示例:

  • checkout-or-export /MyProject/trunk r123 depth=infinity

  • log (/path1,/path2,/path3) r21:87 discover-changed-paths revprops=()

  • status /path r62 depth=infinity

有关操作日志事件的完整列表,请参阅 SVNBook