【发布时间】:2015-03-19 07:03:06
【问题描述】:
我在同一位置有两个解决方案设置。这两个解决方案共享一些项目以及一些专用项目。
我已经创建了两个带有门控签入触发器的单独构建定义,但问题是当我在一个解决方案中进行任何更改时,它都会触发两个构建定义。
我可以根据我正在签入的解决方案以某种方式控制构建定义的触发吗?
【问题讨论】:
标签: deployment continuous-integration tfsbuild alm
我在同一位置有两个解决方案设置。这两个解决方案共享一些项目以及一些专用项目。
我已经创建了两个带有门控签入触发器的单独构建定义,但问题是当我在一个解决方案中进行任何更改时,它都会触发两个构建定义。
我可以根据我正在签入的解决方案以某种方式控制构建定义的触发吗?
【问题讨论】:
标签: deployment continuous-integration tfsbuild alm
您需要正确配置工作区才能使其正常工作。构建定义的映射工作区中的任何更改都将导致构建触发。因此,它完全取决于您的源代码控制布局,是否可以设置仅在属于任一解决方案的某些更改时触发的构建。
这种设置很快就会变得非常难以管理,因此我建议您将每组项目放在它们自己的子文件夹中,这样会更容易很多。
因此,请确保您的构建定义不会同时触发,打开构建定义的“源设置”面板并通过更改第一列中的“活动”将 cloak 规则应用于每个文件或文件夹“隐身”。
要隐藏文件,您需要在 TFS 中输入其完整路径,UI 只会为您提供文件夹选择器,但输入文件路径即可。
这些文件应该:
请注意,cloak 会导致 Team Build 无法在 Build 代理上获取这些文件,因此不可能有您的构建所依赖的文件,但在这些文件更改时不会触发构建。
【讨论】:
您应该为每个项目而不是每个解决方案创建门控签入构建定义。
【讨论】: