SonarQube / SonarLint / Visual Studio:在解决方案中的所有项目中使用一个规则集

Csoltenborn

我们目前正在评估.NET应用程序对SonarQube / SonarLint的使用。我们对到目前为止所看到的一切感到非常满意(顺便说一句,对于将SonarQube推广到现在为止感到很荣幸-我几年前就在我的博士项目中使用了它,自那时以来,它有了很大的进步!)。

但是,有一件事有些令人惊讶:当我将SonarLint实例连接到SonarQube服务器(工作正常)并开始同步绑定的项目时,SonarLint开始下载nuget包(这是预料之中的),然后创建一个对于我们解决方案的每个项目,甚至两个.ruleset文件(除了SonarQube/<solution name>CSharp.ruleset我认为是解决方案范围的规则集的文件)。

我期望并希望仅对整个解决方案有效的单个规则集(以及可能对有意义的项目(例如,测试项目)覆盖该规则集的选项)。

这种行为是否完全可能,即我错过了什么吗?到目前为止,文档是我唯一确定的SonarLint缺少的领域。

杰西霍温

创建这些其他规则集文件是有原因的。好吧,实际上有多个:

  • 这是为了允许您设置所有项目必须遵守的基准,但是为具有特定类型的代码的项目启用附加规则。您可能启用了一些特定于Sharepoint项目的MSOCAF规则,这对您的Unittest或Windows Service项目没有意义

  • 例如,当您要修复项目中的技术债务时,可以为整个解决方案设置基准,并慢慢收紧各个项目的规则集,以便将清理工作集中在特定项目上。不必在解决方案中的所有项目中同时清除一条特定的规则或一组规则。

每次与SonarQube同步时,项目规则集文件之一将被覆盖。剩下的一个将保留。允许您保存自定义设置,并且仍然可以安全地将更改同步到SonarQube基准。

如果我没有记错的话,那么解决方案规则集和存储自定义内容的规则集一样都包含在项目规则集中。目前,我手头没有SonarQube服务器来验证哪个规则集文件服务器有什么用途,但这是其背后的原因。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么在Visual Studio的SonarLint中不存在某些SonarQube规则

如何使用自定义规则严重性设置从SonarQube下载Visual Studio的最新SonarLint规则集?

SonarLint:SonarQube项目选项有什么作用?

SonarLint与SonarQube同步

SonarQube和SonarLint的区别

日食中显示的Sonarlint问题与Sonarqube项目不同步

如何在Visual Studio Code中配置SonarLint的规则集?

在没有SonarQube的情况下运行SonarLint VisualStudio插件

具有自定义SonarQube F#插件的SonarLint

从解决方案中构建一个Web项目,在Visual Studio Online Build Definition中使用多个Web项目

无法使用Eclipse Oxygen中的HTTPS连接到SonarQube Server(SonarLint插件)

SonarLint“连接被拒绝”到SonarQube 6.7

如何一次在一个解决方案中编写多个项目中的代码?[Visual Studio/Xamarin]

SonarQube生态系统升级(SonarQube和SonarLint)

如何使用Visual Studio 2019在解决方案中为多个项目指定自定义代码分析规则集?

如何从Visual Studio解决方案项目中选择Google工作表中的下一个单元格?

SonarLint无法连接到SonarQube服务器

如何将 SonarQube 6.4 连接到 SonarLint 3.5

一个Visual Studio解决方案中可以有两个不同类型的项目(即,桌面项目和Web项目)吗?

SonarLint Visual Studio 2015插件不支持asp.net核心?

多项目Visual Studio解决方案无法调试一个项目dll

如何从同一解决方案访问另一个项目?(Visual Studio 2012)

Visual Studio 2015-如何从另一个解决方案引用项目?

使用GIT存储库的Visual Studio在一个解决方案中使用API和网站发布

Visual Studio不显示解决方案中的所有项目

我可以列出Visual Studio解决方案中的所有*不可用*项目吗?

在 Visual Studio 解决方案中设置所有项目的运行时库

我可以在不使用声纳扫描仪的情况下使用sonarlint运行分析并在sonarqube服务器上看到相同的结果吗

相对于一个空项目,使用Visual Studio中的模板创建解决方案的实际作用是什么?