2015-03-19 68 views
1

我在同一位置获得了两个解决方案设置。这两个解决方案分享一些项目以及一些专用项目。构建工作区映射

我已经创建了两个单独的构建定义与门控检查触发器,但问题是,当我在一个解决方案做任何改变,它会触发这两个构建定义。

我能以某种方式控制基于我正在检查的解决方案的构建定义的触发吗?

回答

1

您需要正确配置您的工作区以使其正常工作。构建定义的映射工作空间中的任何更改都会导致构建触发。由于这个原因,它完全依赖于你的源代码控制布局,是否可以设置一个只有当属于任一解决方案的某些更改都会触发的构建。

这种设置将变得非常难以快速管理,因此我建议您将每套项目放在他们自己的子文件夹中,这使得它更容易lot

因此,确保构建定义不会同时触发,打开构建定义的“源设置”面板,并将规则应用于每个文件或文件夹,方法是将第一列中的“活动”更改为“隐身” 。

要隐藏文件,您需要在TFS中输入其完整路径,UI将只提供给您一个文件夹选取器,但输入文件的路径将会起作用。

这些文件应该:

  • 并不需要来构建解决方案
  • 变化不应触发构建。

请注意,披风将团队建设拿不到的Build代理这些文件,所以它不可能有文件的生成依赖于,但是,当更改这些文件不会触发构建。

+0

感谢您分享。我更关心两个解决方案之间共享的一些项目。在这种情况下,对这个项目所做的任何更改都会触发这两个构建。有什么办法可以避免这种情况吗? – 2015-03-19 11:59:32

+1

你现在已经知道了答案。不,这是不可能的。这些属于最后一个注释类别。在这种情况下,您需要使用3个解决方案并设置一个像nuget存储库的东西来共享这些工件。 – jessehouwing 2015-03-19 12:01:29

-2

您应该为每个项目创建门控签入构建定义而非每个解决方案。