2013-04-05 41 views
0

我有一个TFS 2010构建定义与其XAML工作流逻辑和东西。TFS 2010 - CI触发器仅受影响的工作区解决方案

这是一个持续集成 def,它与几个包含在同一个服务器/工作区文件夹中的解决方案相关联。

我希望它能够编译和运行测试,但只是工作区受到影响的解决方案。例如:要检查一个解决方案的.cs文件;我希望定义仅编译具有更改的解决方案,并放弃其他解决方案,除非签入更改集涉及这些解决方案中包含的文件。

我做IncrementalBuildIncrementalGet的一些研究(可与生成定义的“干净的工作空间”参数来实现),但它仍然是编译所有的解决方案。

有没有办法通过改变XAML工作流程或任何特殊参数来实现这一点?

感谢,

回答

1

据我所知,你必须为不同的构建这些解决方案进行拆分。当构建定义被触发时,它将处理所有要构建的项目。现在解决方案应该跳过最新的项目,但解决方案本身将被处理。

+0

是的;我想这是唯一的方法:我找不到一个简单的方法来实现这一点。 将您的答案标记为有效答案,谢谢。 – Silvestre 2013-04-05 19:14:59

+0

知道该解决方案的唯一方法已经改变它来构建它,Tfs对解决方案的内容没有任何理解。当通过签入触发构建时,因为映射的工作空间路径在源代码管理中发生更改。 Clean Workspace参数会影响msbuild如何处理该进程,如果之前的输出在那里,它将跳过不需要编译的部分,就像localy studio一样。开箱即用的唯一可能的链接是将解决方案拆分为独立的构建,并将其路径与工作空间的路径相匹配。否则,您将需要添加自定义逻辑来过滤解决方案。 – drk 2013-04-08 10:54:39

相关问题