Azure DevOps 管道:Visual Studio 构建任务忽略 .editorconfig 中的设置

Dav*_*lla 5 msbuild editorconfig azure-devops azure-pipelines

在我的 .NET Framework (C#) 解决方案中,我使用一些 Roslyn 分析器,我在 .editorconfig 文件中调整了其设置。

当我在 VS 2019 中本地构建解决方案时,我没有收到来自分析器的警告。

当我在 Azure DevOps 管道任务中构建解决方案时,会生成 Roslyn 相关警告:

构建任务 构建任务中出现警告

在我看来,DevOps 管道任务会忽略 .editorconfig 文件中的设置。如何使管道任务考虑 .editorconfig 文件设置?

Lan*_*SFT 3

如何使管道任务考虑 .editorconfig 文件设置?

我们不需要手动设置.editorconfig管道中的任何内容,当它放在项目文件夹下时它会自动工作。我刚刚在本地机器和构建管道中测试了它,它应该可以工作。

所以你应该:

1.导航到 Azure Devops Repos,检查该.editorconfig文件是否与该文件位于同一文件夹中xx.csproj。注意您选择的分支,确保用于运行构建管道的分支确实具有该.editorconfig文件。

2.检查文件内容.editorconfig,检查是否包含如下语句:

# SA1633: File should have header
dotnet_diagnostic.SA1633.severity = none
Run Code Online (Sandbox Code Playgroud)

您的.editorconfig文件不会抑制这些警告,除非它包含此类定义。

3.尝试使用不同的代理,我假设您使用的是自助代理。这意味着您正在调用本地 VS 实例来运行该作业,并且可能存在问题。我建议你可以尝试使用微软托管的代理运行它(选择windows-latest),它在我这边运行良好。另外,如果您继续使用自我代理,请将本地 VS 更新到最新版本。

4.指定nuget.exe的版本,4.4.0太旧了。尝试使用 5.3.1 及更高版本。

希望以上内容有所帮助:)

  • 解决方案文件夹中只有一个 .editorconfig 怎么样?你是说,对于一个72个项目的解决方案,我需要复制文件72次,并在每个项目文件夹中放一个副本?! (2认同)