2

我们有一个 .NET Web 应用程序,在 TFS 2008 上包含 172 个项目,包含应用程序的所有 3 层并使用 Team Build for CI。我们使用VS2010进行开发。

我们希望使用最小推荐规则集为所有项目激活代码分析,并在 TFS 中强制执行签入策略,即在签入之前应运行一次代码分析。但我们希望对我们的开发人员的影响最小他们的定期开发检查过程。每次我们在项目的属性中启用代码分析时,该项目的正常构建时间都会增加 100%。我们对代码分析问题进行了分析,尽管即使对于这个规则集也有很多问题,但它可以分发给所有可以在进行现有增强的同时修复这些问题的开发人员。

所以基本上我们有两种类型的构建:

  1. 正常构建以检查代码的适当性,这在我们签入代码之前发生了几次。
  2. 签入前的最终构建,我们还想检查代码分析。

因此,我们创建了另一个名为“DebugWithCA”的解决方案配置,它启用了其项目以进行代码分析,以便开发人员在签入代码之前,将配置从 Debug 切换到 DebugWithCA,构建并修复代码分析问题,然后签入。这样对于正常的构建,开发者停留在Debug解决方案配置中,不必承担代码分析带来的额外构建时间。

但这似乎也是一种开销,因为我们在白天有很多签到(许多开发人员),每次签到和切换回来时切换解决方案配置变得很痛苦。

有没有更简单的方法来完成我们的要求?在进行构建时,是否可以分配一个快捷键,以便它使用代码分析构建或使用 VS2010 中的特定解决方案配置构建?

4

1 回答 1

0

我可以想到两种实用的方法来规避您的问题。这两个建议都将代码分析排除在开发人员的关键开发路径/时间之外。

  1. 在 Gated Check-in 中激活您的DebugWithCA配置。开发人员只需签入代码,构建系统确保执行代码分析,并且仅在不违反基本规则时才接受更改。
  2. 更轻松;只需根据DebugWithCA配置执行滚动构建。开发人员可以离线发现违反规则的情况。不太受欢迎的选项,但侵入性也较小。
于 2011-10-21T20:42:03.320 回答