TFS SQL - 选择未合并的变更集列表

时间:2016-01-12 21:51:33

标签: sql-server tfs

使用SSMS并连接到TFS服务器我试图选择尚未合并到同一项目中其他分支的所有变更集的列表,并且我不知所措。要使用哪些表,或如何加入它们。

目标是以这样的方式呈现信息:它生成结果集:

UserName | CountOfUnmergedChangeSets

User1 | 32

User2 | 1

User3 | 10

我看到项目数据库中有“dbo.tbl_ChangeSet”,而[Tfs_Warehouse]数据库中有另一个标题为“[dbo]。[DimChangeset]”。我也看到dbo.tbl_MergeHistory,但在确定如何与changeset表一起使用时没有效果。

1 个答案:

答案 0 :(得分:1)

正如Daniel所说,不建议直接从TFS数据库查询信息。您可以使用TFS tf.exe merge command(也可以在PowerShell脚本中使用)。

tf merge /candidate /recursive BranchA  BranchB

此命令将显示对BranchA所做的所有更改集,但尚未合并到BranchB中。

另一种选择是使用API​​来实现您的目的。VersionControlServer有一个名为GetMergeCandidates的属性,它返回一个MergeCandidate数组,该数组包含变更集,如果已经部分合并为属性。这也是一个类似的问题TFS: List changesets that have not been merged供您参考