gpt4 book ai didi

tfs - 如何在 TFS 源代码控制树中查找某个点以下的所有更改

转载 作者:行者123 更新时间:2023-12-04 17:05:40 25 4
gpt4 key购买 nike

我需要知道在我们的源代码控制树中的特定级别发生了哪些更改(如果有)。有没有办法对TFS进行这样的查询?

最佳答案

使用团队资源管理器:

  • 开源控制资源管理器
  • 导航到所需的源代码管理文件夹
  • 右键单击并选择查看历史记录

  • 向您显示已在树中该级别或以下级别 checkin 的所有变更集。

    使用 tf 实用程序:
    tf history c:\localFolder -r -format:detailed
    以下是 tf 历史文档的链接,了解有关使用的更多详细信息: link

    使用 TFS SDK以编程方式执行此操作:

    这是基于我们的一些代码的示例方法。它需要一个路径、开始时间和结束时间,并在两个指定时间之间为您提供该路径下的所有变更集详细信息:

    private StringBuilder GetTfsModifications(string tfsPath, DateTime startTime, DateTime endTime)
    {
    StringBuilder bodyContent = new StringBuilder();

    TeamFoundationServer tfs = new TeamFoundationServer("YourServerNameHere");
    VersionControlServer vcs = (VersionControlServer)tfs.GetService(typeof(VersionControlServer));

    // Get collection of changesets below the given path
    System.Collections.IEnumerable changesets = vcs.QueryHistory(
    tfsPath,
    VersionSpec.Latest,
    0,
    RecursionType.Full,
    null,
    new DateVersionSpec(startTime),
    new DateVersionSpec(endTime),
    int.MaxValue,
    true,
    false);

    // Iterate through changesets and extract any data you want from them
    foreach (Changeset changeset in changesets)
    {
    StringBuilder changes = new StringBuilder();
    StringBuilder assocWorkItems = new StringBuilder();

    // Create a list of the associated work items for the ChangeSet
    foreach (WorkItem assocWorkItem in changeset.WorkItems)
    {
    assocWorkItems.Append(assocWorkItem.Id.ToString());
    }

    // Get details from each of the changes in the changeset
    foreach (Change change in changeset.Changes)
    {
    changes.AppendLine(string.Format(CultureInfo.InvariantCulture, "\t{0}\t{1}",
    PendingChange.GetLocalizedStringForChangeType(change.ChangeType),
    change.Item.ServerItem));
    }

    // Get some details from the changeset and append the individual change details below it
    if (changes.Length > 0)
    {
    bodyContent.AppendLine(string.Format(CultureInfo.InvariantCulture, "{0}\t{1}\t{2}\t{3}\t{4}",
    changeset.ChangesetId,
    changeset.Committer.Substring(changeset.Committer.IndexOf('\\') + 1),
    changeset.CreationDate,
    changeset.Comment,
    assocWorkItems.ToString()));
    bodyContent.Append(changes.ToString());
    }
    }

    return bodyContent;
    }

    关于tfs - 如何在 TFS 源代码控制树中查找某个点以下的所有更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1702016/

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