我正在制作一个连接到存储库的PHP工具,下载提交列表并在本地存储它们.但是,由于某些存储库可能很大并且抓取其日志会导致等待时间过长和可能的超时/错误,我想使用异步请求下载每个提交消息.
所以,我在修订历史中有一个起点和终点,我可以像这样抓取所有日志:
svn log -r <from_revision>:<to_revision> <REPO_URL>
...我最终可能会得到一个XML文件,这个文件非常庞大,需要很长时间才能下载,需要很长时间和大量资源才能解析,并且需要很长时间才能存储.
如果我知道开始和结束点,我可以创建一个for()循环来逐个获取修订:
svn log -r <revision> ...
但是,由于我不知道给定路径存在哪些具体修订,我将收到错误.我可以让应用程序在更新期间忽略该错误,但它是一个讨厌的黑客,它会发布请求并等待响应 - 无论如何都不好.
所以,我需要这样的东西:
这样我就可以为存储库路径创建一系列有效的修订版本并逐个获取它们.
欢迎提出所有建议,谢谢.