1

给定:团队项目 X 中具有 m > n 变更集的 TFS 服务器。

我正在使用 TFS API 并希望获取该分支的 n 个最新变更集。

我想我应该使用VersionControlServer.QueryHistory,但我不明白如何指定我想要来自项目 X 的​​主(默认)分支的所有提交,但不来自任何其他分支或集合中的另一个团队项目。

4

2 回答 2

4

如果您只想更改 $/Project/Some/Path,那么这应该是QueryHistory. 例如:

QueryHistory("$/Project/Some/Path", RecursionType.Full, 5);

将显示最近受影响的 5 个变更集$/Project/Some/Path

于 2013-04-24T13:33:43.973 回答
1

这对我有用——我必须使用 QueryHistoryParameters 重载并设置 SortAscending = false 才能获得最新的变更集 ID,而不是第一个变更集 ID。

var p = new QueryHistoryParameters(item.ServerItem, RecursionType.Full) {SortAscending = false};
var q = versionControl.QueryHistory(p);
var lastCs = q.FirstOrDefault();

if (lastCs != null)
    item.LastChangesetId = lastCs.ChangesetId;
于 2015-07-09T16:23:12.740 回答