如何使用Sonar重新分析项目的完整历史记录?

14

我希望将自项目开始以来的整个历史记录加载到Sonar中。

基本上,我想执行以下代码:

0)从Subversion检出版本1
1)从Subversion检出下一个版本
2)如果提交日期与前一个日期相同,则返回1
3) 运行mvn sonar:sonar,使用提交时间覆盖构建时间
4) 如果不是最后一次提交,则返回1

是否有已经实现此功能的工具? 是否有一种办法说服Sonar使用不同于当前日期的日期?


1
我有同样的问题,对带有“sonar.projectDate”的脚本非常感兴趣。您写了这个脚本吗?先行致谢。 - Pith
4个回答

13

1

我发现来自@adam-banko的脚本已经无法使用了(因为它已经有8年历史了)。

这里是一个更新后的Python3脚本,用于上传Maven项目的历史快照: https://gist.github.com/hughluo/c51b14cfcd9afe3f89149f478c1a65d5

使用方法

  1. 更改脚本中的日期范围以适应您的需求。

  2. 将脚本放在包含项目根目录 pom.xml 的文件夹中并运行。

SONAR_HOST=<sonar.host.url> SONAR_LOGIN=<sonar.login> SONAR_PROJECT=<sonar.projectKey> python3 upload_snapshots_sonar.py

1

我刚刚在搜索这个东西,发现在GitHub上有一个方便的bash脚本:

https://gist.github.com/aslakknutsen/2422117

该脚本将检出每个标签(从指定参数开始的特定标签),将标签日期设置为sonar.projectDate并对其进行sonar分析。非常方便。我认为我可能需要稍微修改一下,因为我们在仓库中没有那么多标签,也许每周进行一次分析之类的。

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接