【问题标题】:TFS Loses History when Merging合并时 TFS 丢失历史记录
【发布时间】:2009-07-15 12:40:03
【问题描述】:

Team Foundation Server (TFS) 2005 和 2008 在分支和合并回来时都会丢失文件的历史记录(签入 + cmets)。所以例如如果在分支中进行了更改然后合并回根分支,则在分支中所做的任何更改都不会在根分支中可见。历史中唯一可见的是发生了合并。

有谁知道是否有一个选项可以设置为保留历史记录,或者另一种方法来进行合并以保留历史记录?

【问题讨论】:

    标签: version-control tfs


    【解决方案1】:
    • 您是正确的,TFS 在合并时默认不跟踪历史记录。但是,有一个 powertool 允许您这样做(请参阅 TFS 电动工具命令 下的历史命令)。

    • 详情请见this comment

    “如果 TFS 只维护分支文件的历史记录,而不是每次完成分支时都从头开始,那么在分支之间就可以进行类似的安全合并”

    您可以安装 Power Tools,然后使用 /followbranches 标志检索历史信息:http://msdn2.microsoft.com/en-us/vstudio/aa718351.aspx

    历史命令 使用 history 命令显示一个或多个文件和文件夹的修订历史。 /followbranches 选项返回文件分支的祖先的历史记录。

    还有一个 codeplex 项目可以在 GUI 中启用该选项: http://www.codeplex.com/TFSBranchHistory

    【讨论】:

    • 谢谢。分支历史插件非常棒(但有点慢)。
    • 很高兴为您提供帮助! _
    • 那是微软的错...我修复了链接,使用来自微软的 Wayback Machine 的存档。显然发布一个新的 TFS 版本意味着他们可以删除所有旧的在线文档:/
    【解决方案2】:

    现在可以从 Microsoft Gallery 获得适用于 VS2010 的 TFS 分支历史插件: http://visualstudiogallery.msdn.microsoft.com/7d4f37b6-f9a4-44c6-b0a0-994956538a44 这个插件只是来自不同分支的查询历史记录并合并记录。

    【讨论】:

      【解决方案3】:

      Microsoft Gallery 中的 TFS 分支历史插件仅适用于 VS2010。

      对于那些使用 Visual Studio 2008 的用户,here is a plugin 提供相同的功能。

      安装后,打开VS2008,进入TFS Source Control窗口。

      • 右键单击一个项目,您将在上下文菜单中看到一个名为“Branched History”的新选项。
      • 单击此按钮可获取该项目在所有先前 TFS 分支中的历史记录。如果您使用的是慢速机器,请等待几秒钟。

      在“分支历史”窗口中,您还可以像在常规“历史”窗口中一样查看或比较文件版本。

      【讨论】:

      • 在VS2008中没有这个插件是不行的。我不确定VS的更高版本。但是你当然可以通过 T-SQL 直接查询 TFS 数据库....
      猜你喜欢
      • 2012-02-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-18
      • 2011-03-02
      • 2012-08-06
      • 1970-01-01
      • 2020-10-27
      相关资源
      最近更新 更多