使用TFS 2008以最小的影响启用代码分析



我们有一个。net web应用程序,在TFS 2008上有172个项目,涵盖了应用程序的所有3层,并使用Team Build进行CI。我们使用VS2010进行开发。

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

基本上我们有两种构建方式:

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

因此,我们创建了另一个名为"DebugWithCA"的解决方案配置,该配置使其项目能够进行代码分析,以便在开发人员签入代码之前,他将配置从Debug切换到DebugWithCA,构建并修复代码分析问题,然后签入。因此,对于正常的构建,开发人员停留在调试解决方案配置中,而不必承担由代码分析引起的额外构建时间。

但是这似乎也是一个开销,因为我们在一天中有很多签入(许多开发人员),并且每次签入和切换解决方案配置都变得很痛苦。

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

我可以想到两种实用的方法来解决你的问题。这两个建议都将代码分析从开发人员的关键开发路径/时间中剔除。

  1. 在门控签入中激活DebugWithCA配置。开发人员只需签入代码,构建系统确保执行代码分析,并且只有在没有违反基本规则时才接受更改。
  2. 更放松;只要基于DebugWithCA配置执行滚动构建即可。开发人员可以离线处理违反规则的行为。不太受欢迎的选择,但也更少干扰。

最新更新