【问题标题】:Can TortoiseSVN provide a cross-repository view of user activity?TortoiseSVN 能否提供用户活动的跨存储库视图?
【发布时间】:2011-03-14 19:14:54
【问题描述】:

有没有一种方法可以让我使用 TortoiseSVN 在多个存储库中查看给定时间段内的提交历史记录?能够看到这一点会很好,如果我在多个存储库中工作,获取完整的提交历史记录会有点麻烦。

【问题讨论】:

  • 这些是多个不相关的存储库吗?
  • 是的。但是,由于每次提交都会保存日志用户,因此 SVN 应该 能够向您显示某种聚合视图。同样,这可能是不可能的......
  • 我想你不会愿意使用命令行 svn 客户端吧?这可能适合一个漂亮的 powershell 脚本或其他东西......
  • 命令行客户端有 --xml 选项,应该使输出更容易使用。

标签: tortoisesvn history commit


【解决方案1】:

如果你不打算排除 svn.exe 客户端,你可以这样做:

svn log <path_to_repo> -r1:head -q | find "william_leara" >> c:\my_commits.txt

对每个存储库执行此操作,“my_commits.txt”将包含您在每个存储库中的提交。如果您没有大量的存储库,那没什么大不了的。进一步的例子:

:: dump my commits
svn log http://<server>/<path1> -r1:head -q | find "william_leara" >> c:\my_commits.txt
svn log http://<server>/<path2> -r1:head -q | find "william_leara" >> c:\my_commits.txt
svn log file:///c:/src/myrepo -r1:head -q | find "william_leara" >> c:\my_commits.txt

。 . .我想你应该已经明白了。当然,您可以根据需要编辑范围,或者编写一个接受参数的批处理文件来指定存储库/范围/用户,等等。

【讨论】:

    【解决方案2】:

    获得类似跨存储库视图的唯一方法是使用设置菜单,然后使用日志缓存->缓存存储库。这允许获取 svn 存储库统计信息(实际上,与特定存储库的本地使用情况有关) - 详细信息 并以文件集的形式导出存储库数据:[filename].changes.csv, [filename] .merges.csv、[filename].paths.csv、[filename].revisions.csv 等。您最有可能对后者感兴趣。我认为它可以很容易处理,例如通过 perl 以您需要的形式在给定时间段内获得提交历史记录。

    【讨论】:

      猜你喜欢
      • 2012-09-21
      • 1970-01-01
      • 2011-03-28
      • 2011-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-18
      相关资源
      最近更新 更多