【问题标题】:VSS 2005 migration to TFS 2010 - History Not MigratedVSS 2005 迁移到 TFS 2010 - 历史未迁移
【发布时间】:2012-01-05 00:26:45
【问题描述】:

我正在尝试将一个小项目从 VSS 2005 转换为 TFS 2010,除了所有历史记录都没有转换外,一切正常。我正在密切关注http://msdn.microsoft.com/en-us/library/ms253060.aspx(从 Visual SourceSafe - Visual Studio 2010 迁移)的演练。

我从一个巨大的 VSS 数据库备份一个小项目到我的本地机器,准备 settings.xml 文件,在分析中运行 VSSConverter,然后在迁移模式下,代码最终在 TFS 中,项目结构是正确的,只是历史不存在。

转换后,VSSConverter.log 文件中有一些错误,如下所示:

[VSS,             Error,     3, 2012/01/04 14:48:02.159] Exception: System.Runtime.InteropServices.COMException
    Message: File or project not found
    Stack Trace:    at Microsoft.VisualStudio.SourceSafe.Interop.IVSSItem.get_Versions(Int32 iFlags)
   at Microsoft.TeamFoundation.Converters.VersionControl.Vss.VssWrapper.ReadHistoryItemNoRecursive(ItemInfo itemInfo, Int32 flags, String spec, String name, Boolean type, Boolean deleted, Boolean isPinned, Int32 pinnedVersion, Boolean writeToDB)
   at Microsoft.TeamFoundation.Converters.VersionControl.Vss.VssWrapper.PutInfoInDB(ItemInfo itemInfo, Boolean isMigrate)
    Help Link: ssusexp.hlp#10609
    BaseExceptionMessage: File or project not found

我尝试搜索有关这些错误的更多信息,但没有太多信息。有没有人看到这些错误?

谢谢。

【问题讨论】:

  • 澄清一下,我假设您:a) 在 VSS 归档工具的版本范围选项中选择了“归档所有数据”,并且 b) 没有遵循迁移指南,正确吗?

标签: visual-sourcesafe tfs-migration vssconverter


【解决方案1】:

我想我发现自己做错了什么,现在可以重现该行为。 我原来的VSS数据库结构如下

$/
___+Folder1
_______+Project11
_______+Project11
...........
_______+Project1n
___+Folder2
_______+Project21
...........
_______+Project2n

等等。如果我将 Project11 备份并恢复到一个空的 VSS 数据库,我会执行以下操作:

$/
___+Folder1
______+Project11

现在,当我放置

<Project Source="$/Folder1" Destination="$/Project11"></Project>

在我的 settings.xml 中,我丢失了历史记录,即使所有代码都已正确转换。 当我将其更改为

<Project Source="$/Folder1/Project11" Destination="$/Project11"></Project>

所有历史记录都会被转换。 也许这对某人有帮助。 :)

【讨论】:

    【解决方案2】:

    我的经验:我们从 TFS2005 迁移到 TFS2008,然后再迁移到 TFS2010。据我记得,在迁移到 TFS 2008 期间存在问题。我们使用迁移工具将所有变更集从 TFS2005 迁移到 TFS2008 数据库(每个变更集)(以保存历史更改)。这真的是一个缓慢的过程。不可能在一天之内完成,因此我们决定将整个存储库移至新的 TFS 数据库(以免阻止开发人员签入他们的代码更改)。我们丢失了所有历史更改,但我们被迁移了 :) 并且开发人员没有被阻止。这不是我的责任。我没有做出这个决定。我们使用了一些来自 codeplex 的工具。也许this one(我现在不记得了,抱歉)。从 TFS2008 迁移到 FTS2010 完全没有问题,因为您可以将 sam DB 用于 TFS2010,并且您的历史更改应该不会受到影响。

    我知道这不是您问题的答案,但不这样做可能对某人有所帮助:)

    【讨论】:

    • 您不需要进行迁移。 TFS 2008 将升级 TFS 2005 数据库并保留历史记录。
    • 嗯。我不知道为什么使用迁移工具来迁移我们的源而不是简单的数据库迁移:(
    猜你喜欢
    • 2011-08-14
    • 2011-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-06
    相关资源
    最近更新 更多