SonarQube - 分析同一个项目的分支

时间:2014-07-16 16:38:16

标签: sonarqube

我知道没有"新项目" SonarQube UI上的按钮。但是,我有两个同一个项目的分支,我想对其进行分析。问题在于,由于项目名称相同,SonarQube会将两个分支的分析结果上传到SonarQube Server上的同一个项目中。如何配置SonarQube,以便一个分支将分析结果上传到一个项目,另一个分支将结果上传到SonarQube服务器上的另一个项目?

5 个答案:

答案 0 :(得分:50)

您可能希望查看this part of the Sonar documentation,特别是在sonar.branch参数中。它似乎是为你想要做的而设计的,并且正在为我们这样做。

答案 1 :(得分:6)

如果您使用SonarQube Runner,则必须将sonar.projectKey属性更改为其他值。如果您使用基于maven的分析,则将-Dsonar.projectKey="Something"添加到您的命令中。例如:

mvn sonar:sonar -Dsonar.projectKey="My project in first branch"
mvn sonar:sonar -Dsonar.projectKey="My project in second branch"

您可以使用sonar.projectName属性以类似的方式更改项目名称。

答案 2 :(得分:6)

This blog post by the SonarQube team表明在版本6中将改进对分支的处理。

此外,如果您正在使用拉取请求,请查看其拉取请求分析插件(目前GitHub和BitBucket)。

答案 3 :(得分:4)

由于sonar.branch参数已弃用且Developer Edition需要花钱,因此可以选择使用已提及的branch plugin for SonarQube Community Edition(LGPL)。

更新:好像回购已经不见了,不知道为什么。还有另一个分叉,但看起来不太活跃,请参阅here

答案 4 :(得分:0)

sonar.branch参数已从7.1版声纳中弃用,因此,作为替代方案,并对sonarQube 7.1版字词进行单独的分支分析,您可以使用类似这样的内容。

我假设您有maven项目。如果不是,只需从中删除-D并使用它即可。

mvn sonar:sonar -Dsonar.projectKey=<projectname>
mvn sonar:sonar -Dsonar.projectName=<project-name>

项目密钥应唯一。否则,它将合并具有相同项目密钥的其他分支的结果。

相关问题