【问题标题】:TFS 2010: history lost after moving a folderTFS 2010:移动文件夹后历史记录丢失
【发布时间】:2012-12-24 12:49:34
【问题描述】:

为了清理我的项目结构,我通过 TFS Power Tools Shell-Extension(重命名/移动)将一个文件夹移动到另一个(新)文件夹中。

在新地点检查历史后,移动是唯一的条目。 (我向上、向下尝试了一个文件夹,甚至在移动文件夹中的单个文件上都尝试了。结果相同。)

我还在移动之前在文件夹的版本上贴了一些标签,因为我想回到代码的一些重要状态。

那么.. 出了什么问题,我怎样才能获得历史记录,或者至少再次找出标签名称并查看这些版本?

【问题讨论】:

    标签: tfs label history


    【解决方案1】:

    事实证明这很容易。

    在 Visual Studio 2010 中,转到工具->选项。在那里您可以找到显示“已删除”项目的选项(大约在对话框的中间)。旧文件夹在移动过程中被删除 - 激活该选项后将再次显示。 (它们会带有一个灰色的红十字。)

    不过,标签似乎消失了,所以我不得不按版本进行。

    在 Source Explorer 中,您可以再次进行正常操作 - 例如查看历史记录或获取。

    【讨论】:

    • 适用于一些文件,但不是全部。
    【解决方案2】:

    免责声明:供所有来到这里的人参考,这个答案并不能解决@Andreas 问题,只是提供一些关于为什么会发生这种情况的背景并提供一些解决方法。

    似乎在 TFS 2010 中移动文件夹时丢失历史记录不是错误,而是“功能”。 (仍在 TFS2012 中发生。从此 MSDN link 您可以阅读微软官方回答

    感谢您的反馈。 之前关于这是设计使然的评论是正确的,并且在命令行上有一个选项。在 UI 中,文件夹的历史是递归的 - 总是。这是因为大多数时候,用户关心文件夹内容的历史。另一方面,文件没有递归历史的概念——你总是看到文件本身的历史。现在,从命令行,有一个显示递归历史记录 (/r) 的选项,如果您在没有递归选项的文件夹上运行 tf history,您将看到文件夹本身的更改。这将包括文件夹本身的重命名等更改。

    • 丢失历史记录的解决方法:如您所见,您有一个使用 tf history解决方法
    • 避免丢失历史记录的解决方法:如果您想避免丢失文件夹中的历史记录而不是使用移动功能,您可以使用 TFS 集成工具将代码从一个文件夹迁移到另一个保存历史,从 $/TFSCode/FolderA 迁移到 $/TFSCode/FolderB。这有点矫枉过正,但如果历史记录对您来说非常重要,那么比在已删除的文件夹中查找要好得多

    【讨论】:

    • 感谢您提供更多信息!但是有一个问题:迁移不是简单地制作副本(包括历史)吗? (我前段时间这样做是为了迁移到另一台服务器 - 它的文档记录不太好,而且对于临时用户来说通常过于复杂。不过,最终它还是奏效了。)
    • 不客气。迁移是一个“简单”的副本。但您会丢失变更集(尽管旧的在描述中)和日期(所有日期都是从您执行迁移的那一刻起)
    • 太复杂了。只需使用 Subversion 或 Git,就可以省去一大堆痛苦。
    • 这个答案由 user2570643 在下面给出,我已经对此进行了测试。我的场景:我们在文件夹/项目之间手动移动文件/文件夹,这不会导致文件历史记录丢失。但是,文件夹历史记录会丢失。文件历史隐藏在文件历史行最左侧的小“展开我”箭头下。展开它以查看您的历史记录。干杯
    【解决方案3】:

    文件夹历史确实丢失了,但单个文件历史实际上并没有丢失。它隐藏在文件历史记录行最左侧的小“展开我”箭头下。在文件的最旧历史条目上展开它,或者在您看到它的任何地方展开它,您还将从不再存在的旧位置看到该单个文件的历史记录。

    【讨论】:

    • 这是完美的答案。现在我确信在 TFS 中移动文件/文件夹时我的文件历史记录是安全的,尽管文件夹历史记录丢失了。没关系对我来说。非常感谢您!
    • 请发布屏幕截图。我找不到这个。
    【解决方案4】:

    在历史记录窗口的顶部,您可以编辑源位置,输入旧名称并获取移动之前的完整历史记录。

    另外,值得一提的是,您可以通过将分支移动/重命名回旧位置/名称来获取完整的历史记录。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-06
      • 2011-05-09
      • 1970-01-01
      • 2014-04-26
      • 1970-01-01
      • 2012-02-29
      • 1970-01-01
      相关资源
      最近更新 更多