这意味着 B 没有任何来自 A 的签入历史记录。因此,如果有人在分支 A 上创建了一个新文件,您无法分辨出是谁从分支 B 创建的。如果有人在A"/>

通过合并查看 TFS 签入历史?

View TFS checkin history through merges?

在 TFS 中,当您将分支 A 合并到分支 B 并签入时,您会在 B 上获得一个变更集(通常带有类似"合并 A-B"的注释)。

这意味着 B 没有任何来自 A 的签入历史记录。因此,如果有人在分支 A 上创建了一个新文件,您无法分辨出是谁从分支 B 创建的。如果有人在A,你无法分辨谁从分支 B 进行了更新。

有什么方法可以跨分支查看这种详细的变更集历史记录?某种电动玩具,或第三方工具,或任何东西?

更新:TFS Power Toy tfpt 历史记录 /followbranches 工具不会"扩展合并",只能"扩展分支",因此无法解决此问题。


TFS 2010 将包含对此的支持。

Brian Harry 在本次演讲中谈到了这一点。

您现在可以查看更改的来源以及更改合并到不同分支后的更改者。


目前 \\'tf merges\\' 和 \\'tf merges /f:detailed\\' 提供了最完整的合并跟踪信息。但是,它们只是命令行。我所知道的唯一尝试提供 GUI 的第 3 方工具是 TFS Sidekicks。

这在 TFS 2010 中变得容易得多。请参阅以下位置的屏幕截图:

  • http://blogs.msdn.com/mitrik/archive/2009/06/08/first-class-branches.aspx
  • http://msdn.microsoft.com/en-us/library/dd405662(VS.100).aspx
  • http://msdn.microsoft.com/en-us/library/dd465202(VS.100).aspx
  • http://blogs.msdn.com/bharry/archive/2008/01/16/new-features-to-understand-branching-merging.aspx(旧原型,从那时起有所改变)

TFS SideKicks 是补充 TFS 默认工具的另一个好工具。


我认为您会发现 TFS Sidekicks 很有帮助,尤其是历史区域:

History Sidekick 应用程序窗格提供以下功能:

  • 查看带有文件和文件夹的版本控制树(类似于源代码管理资源管理器)
  • 按名称搜索项目(文件或文件夹)并在版本控制树中选择找到的项目
  • 查看所有用户的选定项目历史记录或按用户过滤
  • 将历史列表导出到 CSV 文件
  • 比较历史中选择的文件版本
  • 查看选定的项目属性和待定更改
  • 查看选定的项目分支树和选定的分支属性
  • 查看选中项合并历史;可以单独查看以选定项目作为合并目标(合并到)或以选定项目作为源(合并自)执行的所有合并
  • 比较历史中的合并目标和源文件版本
  • 在树形视图中查看选定的项目合并候选;可以从列表中选择单个合并源
  • 将合并候选文件版本与目标文件的最新版本进行比较
  • 查看所有用户或按用户过滤的选定项目标签;显示的信息包括标签中的项目版本
  • 比较两个标签之间的文件版本
  • 查看包含变更集的所有列表中支持的变更集详细信息

团队基金会伙伴


TFS 2008 电动玩具确实带有 tf history /followbranches 命令。但是该命令不会扩展合并。

它所做的只是向您显示在创建分支 B 之前 A 的变更集历史记录。它没有向您显示在创建分支后从 A - B 合并了哪些变更集。

换句话说,我想看到的是在源分支上进行的所有更改集,然后作为合并操作的一部分应用于目标分支。


"TFS Branched History" 插件存在于 Microsoft 图库:

http://visualstudiogallery.msdn.microsoft.com/7d4f37b6-f9a4-44c6-b0a0-994956538a44

插件确实将"分支历史"按钮插入到源代码管理资源管理器 (TFS) 的上下文菜单中

按钮图标与标准"历史"类似,但带有蓝色箭头:

Branched

如果您单击"分支历史记录",将打开新窗口并将 Path 属性设置为当前的源代码管理资源管理器路径:

enter

enter

推荐阅读