我们希望拒绝签入,因为签入会破坏我们自定义的静态代码规则。因此,我们定义了一个门控签入构建,并将“执行代码分析”设置为“AsConfigured”。
当我在本地生成解决方案时,使用的配置和目标与为门控签入生成定义的配置和目标相同,没有错误。但是Gated Checkin构建似乎忽略了我们在源代码中定义的任何SuppressMessage属性,因此报告了错误。
门控签入构建不会忽略在GlobalSuppressions文件中定义的SuppressMessage属性。
还有别的人有这个问题吗?
发布于 2012-02-02 22:23:20
当你说你在本地构建很好时,你是从Visual Studio构建的,还是用MSBuild构建的?
TFS Build使用MSBuild构建项目,您应该能够通过查看构建报告中的日志来查看构建过程中运行的MSBuild命令(如果您至少将详细级别设置为Normal)。
要调查此问题,我建议您使用此MSBuild命令在本地构建解决方案(您将需要更改计算机上的解决方案的路径,而不是构建计算机上使用的路径),并且它可能会给出相同的错误,这表明使用MSBuild构建和使用Visual Studio构建之间存在差异。然后,我们可以查看MSBuild命令,了解为什么它的行为方式不同。
希望这能有所帮助。
https://stackoverflow.com/questions/9113596
复制相似问题