使用VSTS共享自定义代码分析规则

时间:2016-01-13 21:18:54

标签: tfs azure-devops

我遇到了共享自定义代码分析规则的问题,我似乎无法过去。我们将VSTS与单一团队项目结构结合使用。

这是我的源代码结构

  • 团队项目
    • _Configuration
      • Custom Rules.ruleset
    • 项目A.
      • 开发
        • Phase2Dev
          • 来源
            • .csproj files
        • 来源
          • .csproj files
    • 项目B
    • ... Project Z

然后在项目文件中我引用了_Configuration \ Custom Rules.ruleset文件,它使用了我期望的相对路径。

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
  ...
  <CodeAnalysisRuleSet>..\..\..\..\..\_Configuration\Custom Rules.ruleset</CodeAnalysisRuleSet>
  <RunCodeAnalysis>true</RunCodeAnalysis>
</PropertyGroup>

问题是:当我从Main分支到Phase2Dev(在Development文件夹内)时,相对路径不再正确,必须手动更正。合并回Main时还需要再次纠正。我知道我可以删除Development文件夹,但是我们使用了很多分支,如果可能的话,这会混淆我想避免的文件夹结构。

修改

根据Daniel的回复,我应该分享更多细节。在这种情况下,“项目A”是大约50个中小型项目之一。我们只想为所有这些代码保留一组代码规则,这就是为什么我将它们放在项目范围之外的文件夹结构中。

所以我的问题:有没有更好的方法来做到这一点,而不依赖于源文件夹结构中深度相同的源?

1 个答案:

答案 0 :(得分:2)

您的代码分析规则应该能够与应用程序一起发展,而不会影响其他分支。将===文件夹移到分支机构内。

如果要跨多个解决方案共享CodeAnalysis规则,则可以将其打包到Nuget包中,并让每个项目都依赖于包。

相关问题