【问题标题】:How to compare to older commits in TFS如何与 TFS 中的旧提交进行比较
【发布时间】:2020-03-31 01:59:40
【问题描述】:

我想将我的最新提交与旧提交之一进行比较,但我不知道如何做到这一点。

使用 TFS Web 界面,我转到代码-> 历史并单击最新提交。这将打开与父级相比的所有更改的摘要。我尝试从“Showing diff to...”下拉菜单中选择一个较旧的提交(除了父级),但我只能选择父级,而不是旧的提交。

当我在提交中选择一个单独的文件时,我可以与较旧的提交进行比较,只要该文件与这些提交相比发生了更改。这确实不能满足我的需求,因为这需要我确切知道哪些文件被修改,浏览我的方式访问每个文件...

有什么建议吗?

【问题讨论】:

    标签: git tfs


    【解决方案1】:

    您现在可以在 TFS 中执行此操作:

    1. 首先,为要比较的两个提交添加标签。在这种情况下,将标签添加到最新提交和旧提交。 (如果您不知道如何操作,请转到 TFS 中的提交列表,将鼠标悬停在所需的提交上,单击出现的省略号,然后点击“创建标签...”。)
    2. 点击 TFS 中的“标签”标题。
    3. 将鼠标悬停在旧提交的标记上,单击省略号,然后单击“设置为比较标记”。
    4. 将鼠标悬停在较新/最新提交的标签上,点击省略号,然后点击“比较标签”。
    5. 点击顶部的“比较”标签。

    完成!您现在应该会看到在提交之间更改的所有文件的列表,并突出显示它们的更改,就像在拉取请求中一样。

    【讨论】:

    • 我只是想在一个清晰的 UI 中检查两个版本之间的变化。这帮助很大!
    • 哪个版本的 TFS?
    【解决方案2】:

    在 Visual Studio 中,您可以比较 单个 文件的最新提交与任何旧提交,在 TFS Web 界面中,您可以获得 所有 文件的统一差异最新的提交与第二次最近的提交相比,但我不认为任何一个界面都可以让你同时做到这两个(即查看提交中所有文件与任意早期提交的统一差异)。

    我认为,部分原因是在谈论多个文件时,不清楚选择 single 较早的提交意味着什么。参考显示从变更集 10384 到最新的 10393 的提交的图。变更集 10393 包含指示的三个文件。

    当您在 TFS 网页界面查看统一差异时,您实际看到的是:

    • 文件 1:10393 对比 10391
    • 文件 2:10393 对比 10389
    • 文件 3:10393 对比 10387

    现在假设您要将最新的提交 (10393) 与 10389 进行比较。这对于文件 1 和文件 2 来说很好,但从技术上讲,文件 3 在提交 10389 中不存在。但实际上,我认为使用指定的版本或更早的行为是非常合理的,因此系统应该从那里搜索并找到文件 3 的变更集 10387。

    所以在我看来这不是一个需要克服的大问题,我同意能够看到与早期提交的统一差异确实是一个非常有用的功能!

    【讨论】:

      【解决方案3】:

      您可以通过选择两个提交、右键单击并比较来比较使用 git 和 tfs 的 2 个提交之间的差异。我将向您展示如何使用 vs2013

      • 第 1 步:转到历史记录并通过按住 ctrl 键单击选择要比较的文件的 2 个版本 STEP 1 PNG
      • 第2步:右键单击选定的版本并进行比较 STEP 2 PNG
      • 第 3 步:比较文件。 xD STEP 3 PNG

      我希望这对你有用。

      【讨论】:

      • 这个问题是你必须先克隆 repo
      猜你喜欢
      • 1970-01-01
      • 2013-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-27
      • 1970-01-01
      相关资源
      最近更新 更多