Svn - 获取服务器上所有存储库的列表,以便我可以svnsync

时间:2010-05-10 10:46:57

标签: html svn svnsync

我正在尝试创建客户现有svn存储库的备份,该存储库可通过http公开获取。

如果可能的话,我希望能够从任何计算机自动创建新的存储库,而无需向外部各方提供服务器的控制台访问权限(即用户可以在我的svn上执行ls repo dir)

我的问题是我需要知道服务器上的svn存储库列表 - 它不是固定列表,因为用户将随着时间的推移添加新的存储库。

我可以使用mod_dav_svn指令通过Apache的SVNListParentPath On模块在​​html页面上列出存储库。我得到了这个页面:http://svn.ohwr.org/

我的问题是:获取此类存储库的可用列表的最简单方法是什么?我需要解析该列表才能进行同步,可能使用shell命令。

我必须使用shell命令解析HTML,还是有更好的方法来获取该列表?

1 个答案:

答案 0 :(得分:1)

我最终创建了自己的解决方案。

我已经设置了一个cron任务,它在svn文件夹上创建一个ls,并将其输出重定向到服务器上的公共文件。此文件没有html标记,它是一个纯文本文件,只包含存储库的名称。

这样,客户端可以轻松地获取该文件并迭代存储库名称。

我对这个实施不是很满意;虽然它有效,但它有点“hacky”。我宁愿使用SVN或Apache自己提供的东西。

如果有人发布更好的解决方案,我会接受它。与此同时,这是我最好的答案。