TFS 构建定义 - 在构建之前查看包含的变更集

TFS Build definition - See included changesets before build

我有 TFS 2017 构建定义,其中设置了 TFVC 存储库路径。使用 TeamCity,您可以看到新的变更集添加到自上次成功构建以来此构建定义链接到的分支。

如何在 TFS 2017 版本中执行此操作?

TFS 中没有这样的 built-in 功能。完成构建后,我们只能从构建摘要中看到相关更改

但是通常您可以按照以下步骤查看在构建之前将包含哪些变更集:

  1. 使用 REST API:

    从上次成功构建中获取 源版本(变更集编号)
    GET http://SERVER:8080/tfs/DefaultCollection/{Project}/_apis/build/builds/{Build ID}
    

例如在浏览器中输入URL -> 输入 -> Ctrl + F -> 找到字符串:source version(参考下面的截图)

  1. 然后从构建定义链接到的特定 branch/path 获取变更集(例如此处的分支 $/LCScrum/1/PS ):

    GET http://SERVER:8080/tfs/DefaultCollection/_apis/tfvc/items?scopePath=$/LCScrum/1/PS&recursionLevel=OneLevel&api-version=1.0-preview.1
    

从第二个响应中我们可以获得特定 branch/path 中文件(变更集)的最新版本。然后你可以比较两个响应,数量大于上次成功构建的源版本的变更集将被包含在下一次构建中。

当然您也可以通过门户网站直接获取信息并进行比较。