Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sonarqube 是否可以对过去的提交执行回顾性分析?_Sonarqube_Software Quality - Fatal编程技术网

Sonarqube 是否可以对过去的提交执行回顾性分析?

Sonarqube 是否可以对过去的提交执行回顾性分析?,sonarqube,software-quality,Sonarqube,Software Quality,我正在考虑为我们团队的项目实施代码质量工具 SonarQube似乎是个不错的选择。我还没有找到理想的工作流程(我们使用SVN和Maven项目,并且有一个Jenkins服务器在每次提交时运行测试) 除了能够分析当前提交的质量的重要性外,历史演变也非常有趣 考虑到我们已经有几年的提交时间,在建立项目时,是否可以要求对这些提交进行回顾性分析,或者从安装之日起,SonarQube是否仅对提交工作有效?SonarQube仅显示扫描仪上传的数据。您可以签出到任何提交(请在此处阅读更多信息:),然后执行扫描程

我正在考虑为我们团队的项目实施代码质量工具

SonarQube似乎是个不错的选择。我还没有找到理想的工作流程(我们使用SVN和Maven项目,并且有一个Jenkins服务器在每次提交时运行测试)

除了能够分析当前提交的质量的重要性外,历史演变也非常有趣


考虑到我们已经有几年的提交时间,在建立项目时,是否可以要求对这些提交进行回顾性分析,或者从安装之日起,SonarQube是否仅对提交工作有效?

SonarQube仅显示扫描仪上传的数据。您可以签出到任何提交(请在此处阅读更多信息:),然后执行扫描程序。使用的扫描仪取决于您使用的构建工具类型:

分析结果将被推送到SonarQube服务器。不幸的是,它始终被视为应用程序的最后一个版本,因此您无法“插入”对项目历史记录中某些旧提交的分析。但是你真的需要它吗?扫描仪总是分析所有来源。如果有人在三年前添加了一些代码,但没有人删除它,那么它将在服务器上可用。如果代码被删除,那么你就不应该花时间去分析那些不存在的东西。这就是为什么SonarQube总是显示项目的最后状态

您可以阅读(2016年4月6日)撰写的一篇好博客文章:


了解更多信息。

是的,可以使用
sonar.projectDate
分析参数进行此操作。它的目的正是你所要求的

引自:

为分析指定一个日期。此参数仅在需要追溯创建未分析项目的历史记录时有用。格式为yyyy-MM-dd,例如:2010-12-01。由于无法执行日期早于数据库中最近一次的分析,因此必须按时间顺序(最早的优先顺序)分析并重新创建项目历史记录


例如,您可以按时间顺序查看最近10个版本标记(最早的第一个!)。对于每个标签,使用
sonar.projectDate
将标签创建日期设置为分析日期。

谢谢提示!你能否在此基础上进一步澄清以下几点:1。“签出到任何提交和执行扫描程序”是什么意思。2.如果扫描仪可能将结果发布到同一个项目中,并使用原始提交编号/日期(即,将历史数据添加到同一个项目中)。@mmalmeida i扩展了答案。我希望现在更清楚。