扫描活动分支的subversion存储库

时间:2011-02-28 18:57:53

标签: svn

我在存储库中有十几个项目。存储库结构如下所示:

/ -------
   + project1 
       +------- trunk
       +------- tags
       +------- branches
   + project2

我们的政策要求在30天不活动后删除任何有效分支。但是,没有自动检测这样的分支。偶尔我有一些分支被遗漏了太多天。

是否有一个脚本列出分支,以及它们的最后一次检查日期?

3 个答案:

答案 0 :(得分:6)

你试过了吗?

svn ls -v http://your.svn.server/path/branches

这将打印分支,其中包含影响他们的最新修订,用户和日期。

答案 1 :(得分:3)

我最终写了一个脚本来做到这一点。对于那些感兴趣的人,你可以通过一个班轮来实现这个目标

svn list -v REPO_URL | grep -E "\/branches\/[0-9a-zA-Z_.-]+\/$"

我的存储库非常大,所以这个单行程运行速度太慢。我不得不优化脚本而不是步入标签和主干,而不是超过两层。

答案 2 :(得分:0)

我这样做的方法是我编写一个脚本来获取所有分支的列表,然后为每个分支,使用“svn log -l 1 -q”获取最新的提交(仅显示最后一个提交并保持沉默),解析日期并做一些日期数学。我不知道任何已经执行此操作的脚本/工具,但无论您的分支模式如何,该方法都应该有效。