TFS 2015" delta"用于构建定义

时间:2017-01-23 15:01:32

标签: tfsbuild tfs2015 build-definition

我试图找到TFS 2015的解决方案来构建" delta"为我的构建。 在TFS 2013中,它由" Clean Workspace"使用参数"输出"。

进行设置

输出:删除所有现有输出,但仅获取自上次构建以来已更改的源文件(增量获取);

有人可以告诉我,应该如何在TFS 2015中完成这项工作?

谢谢。

2 个答案:

答案 0 :(得分:1)

假设您提到了新的构建系统,并且您希望进行增量构建。添加Visual Studio Build / MSBuild任务以构建项目时,取消选中清除选项。查看下面的屏幕截图:

enter image description here

  

清除选项:如果要将其设为增量版本,请设置为False。这个   设置可能会缩短您的构建时间,特别是如果您的代码库是   大。除非您还设置了“清洁”,否则此选项没有实际效果   存储库为False。

     

如果要重建代码项目中的所有代码,请设置为True。   这相当于MSBuild /target:clean argument

答案 1 :(得分:0)

MSFT。当然,这是样本。 目前我们正在使用XAML Build Definition。 例如,我做了一个改变,并为它改变了24000。 我的对象只有DIS / BR-DEV / csv / my-test.inc。

触发构建后,将Clean Workspace设置为"输出"在Build Defaults设置的结果中: 将构建输出复制到以下drop文件夹C \ TEST,我在C \ TEST \ $(Build.BuildNumber)\ csv \ my-test.inc中有一个新文件夹(它忽略了DIS / BR-DEV,因为它在构建模板)。

所以我没有尝试使用构建定义构建相同的功能。我正在使用"复制文件"为此建立一步。

我在源文件夹中指定= $(Build.SourcesDirectory);目标文件夹= D:\ BuildAgent_work \ 1 \ $(Build.BuildNumber)。

问题出在内容领域。我无法指定仅复制我的更改。它具有下一个模式:指定要应用于要复制的文件列表的迷你匹配模式过滤器(每行一个)。例如:

  • 复制根文件夹中的所有文件。 ***复制根文件夹中的所有文件和所有子文件夹中的所有文件。 ** \ bin **从任何bin文件夹递归复制所有文件。

因此,使用这种模式,我将无法根据变更集#动态获取动态。

我还尝试在触发构建时指定C24000,但它只是将其添加到源文件夹中,就是这样。

我希望在我的目标文件夹中找到= D:\ BuildAgent_work \ 1 \ $(Build.BuildNumber)my mytest.inc。