有没有办法从Team Build 2010获取项目级错误/警告消息而不减慢构建速度?

时间:2013-04-17 14:50:38

标签: tfs tfs2010 tfsbuild

我正在为我们的TFS系统建立持续集成。我们系统的一个主要部分是开发大约50个DotNetNuke模块以支持我们的CMS基础设施。现在,每个项目都有自己的解决方案,因为它们的代码库大多是孤立的(在1或2个常见项目中使用公共代码)。将它们保存在自己的解决方案中是因为它使开发过程更快(加载,编译等......)

但是,在设置TFS团队构建时,这已经证明难以维护,因为每个解决方案都必须手动添加到构建定义中,并且由于每个项目都在自己的解决方案中,MSBuild似乎无法利用并行编译。这导致大约5分钟的完整构建时间,虽然并不可怕但并不理想。但大多数情况下,从构建定义维护方面来看,它并不理想。

为了解决这个问题,我创建了一个包含所有项目的全局解决方案。我们的想法是,如果您希望TFS自动编译和部署您的项目,则必须将您的项目包含在全局解决方案中。这看起来效果很好,因为从构建定义的角度来看它很容易维护,并且总构建时间缩短到70秒。

一个问题是显示的TFS构建日志将解决方案下的所有警告和错误组合在一起,而不是按项目将它们分开。这使得很难快速查看哪个项目导致了哪些错误和警告。

是否有一种很好的方法可以在构建日志摘要视图中查看项目级错误/警告消息,而无需深入研究混乱的构建日志?

1 个答案:

答案 0 :(得分:1)

要回答你的直接问题,我相信答案是否定的(至少没有一些重大的定制)。

对我而言,这绝不是一个大问题,因为我非常积极地让我的团队将错误/警告降低到零,然后通过TFS Build强制执行(/ p:TreatWarningsAsErrors = true)。这意味着您永远不必在构建摘要中浏览数百个警告。

如果将所有单独的解决方案添加到构建定义中,则始终可以使用TFS Power Tools“克隆”构建定义以使维护更容易。您还可以修改构建模板以并行构建解决方案/项目,但这会产生文件争用问题的风险。