通过HTTP进行Subversion,哪个命令导致以下请求?

时间:2019-01-28 11:45:43

标签: svn svnsync mod-dav-svn

我目前正在调试第三方svn专有客户端的问题,而我没有源代码(我相信它可以围绕标准svn命令运行,并且用户代理与此匹配) 。当被要求分析我们的仓库时,它会向我们的服务器发送以下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,而是一个导致{{1} })。

有人知道哪个D:href(或者可能是GET)命令和参数导致请求吗?这将有助于在本地缩小问题的范围。

1 个答案:

答案 0 :(得分:1)

启用高级操作日志记录,运行自定义客户端并检查日志。您应该看到与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