gpt4 book ai didi

c# - TFS API - 获取合并的变更集

转载 作者:太空狗 更新时间:2023-10-30 00:24:07 26 4
gpt4 key购买 nike

我有一个程序可以读取最新版本并从中获取所有变更集。然后可以确定我拥有的变更集是否实际上是合并,以及它来自哪里。

这是我所拥有的:

List<IChangesetSummary> changeSets = InformationNodeConverters.GetAssociatedChangesets(build);
IEnumerable<Changeset> changesetDetails = changeSets.Select(x => versionControlServer.GetChangeset(x.ChangesetId));

// Determine is the first changeset was a merge
changesetDetails.First().IsMerge // How to check is the changeset is part of a merge?

更新:

根据到目前为止的答案,我已经更新了

foreach (var cs in changesetDetails)
{
foreach (Change change in cs.Changes)
{
if ((change.ChangeType & ChangeType.Merge) == 0)
continue;

foreach(var m in change.MergeSources)

但是 MergeSources 总是空的。

最佳答案

改为使用 VersionControlServer.GetChangesForChangeset 方法。最后一个参数表示应该包含合并源信息。

List<IChangesetSummary> changeSets = InformationNodeConverters.GetAssociatedChangesets(build);
IEnumerable<Change> changes = changeSets.SelectMany(x => versionControlServer.GetChangesForChangeset(x.ChangesetId, false, Int32.MaxValue, null, null, true));

foreach (Change change in changes)
{
if ((change.ChangeType & ChangeType.Merge) == 0) continue;
foreach (var m in change.MergeSources)
{
// ...
}
}

关于c# - TFS API - 获取合并的变更集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29250748/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com