TFS2008到TFS2010迁移升级

时间:2010-06-15 11:42:11

标签: tfs2010 upgrade tfsbuild tfs2008 tfs-migration

所有

我目前正在尝试创建一个可重复的流程,以便将TFS 2008安装升级到新硬件,这是微软称之为迁移升级,但在新硬件上构建VS 2008项目时遇到问题

我们的TFS 2008安装包括两台机器;一个包含SQL数据库和应用程序层,另一个用作专用的构建服务器。

我们的TFS 2010安装的新硬件包括两台机器;一个包含SQL数据库,应用程序层,SharePoint和Reporting Services。

到目前为止,我已成功地将必要的TFS数据库从原始服务器重新备份到新服务器并还原它们,然后使用'tfsconfig import'命令成功导入数据库并将其升级到Team Project采集。团队项目集合正确显示,并且可立即使用。所有安全设置,搁置集,工作空间等都完好无损。

当我们开始尝试构建解决方案时,我们的问题就开始了。我们最初尝试构建这些解决方案而不将其升级到VS 2010格式,也不会修改任何项目的目标框架。

在构建各种项目时,我们会收到以下错误:

  1.   

    < filename> .resx(x,y):错误RG0000:找不到名称的类型。类型名称是'System.Collections.Generic.List`1 [[< class>,<装配>,Version = a.b.c.d,Culture = neutral,PublicKeyToken = 9557797252b44220]],mscorlib,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'。第x行,位置y。并[d projectfilename>]

  2.   

    ResGen:错误RG0000:无法加载引用的程序集“< filename> .dll”。捕获到FileNotFoundException,说“无法加载文件或程序集”< filename> .dll'或其中一个依赖项。系统找不到指定的文件。“并[d projectfilename>]

  3. 编译与工作流程相关的项目时,各种“模棱两可”的MSBuild目标引用:

      

    C:\ Program Files(x86)\ MSBuild \ Microsoft \ Windows Workflow Foundation \ v3.5 \ Workflow.VisualBasic.Targets(153):'GeneratedCodeAttribute'在名称空间'System.CodeDom.Compiler'中不明确。< / p>

  4. 有关如何消除这些问题的各种建议,包括修改ResGen上的32位支持标志,或强制使用64位ResGen,以及将项目升级到VS 2010格式并将其更改为目标框架4

    问题1. 可以通过将违规项目更改为目标框架4来修复,但由于兼容性问题,此特定项目尚未升级,我还没有找到问题的解决方案2 。&amp; 3。

    我们有超过20个团队项目,每个项目都有多个分支,因此(由于涉及的工作量)会避免手动更改所有项目/解决方案(特别是因为某些产品尚未升级到Framework 4)出于兼容性原因,在Framework 4中构建Framework 3.5目标项目MSBuild看起来并不像微软认为的那样兼容。)

    如果任何人任何可能有用的想法,那么让我知道。

    干杯,

    安东尼

    编辑:

    问题1已被其他人看到,并且涉及引用自定义类型的通用列表的资源文件。事实证明,这些在我们的项目中是多余的,所以我只是删除了它们,而构建问题就是历史。

    问题2似乎已经全部消失,可能是因为修复问题1。

    问题3涉及在面向Framework 3.5时在MSBuild 4中构建VS2008工作流项目。微软以其无限的智慧显然选择不解决这个问题(Link to Connect site),并且有几个想法可以修复它(引用框架的特定版本,更改构建工作流以使用MSBuild 3.5),没有哪个工作。

    因此,在我们构建3.5工作流程(CRM 4.0和SharePoint 2007/2010)的产品支持Framework 4之前,或者在Microsoft修复此问题之前,我们的升级到2010年似乎是暂停的。 / em>的

    修改

    Microsoft已承认存在问题,并已发布以下有关上述KB编号的信息: http://support.microsoft.com/kb/2023579

2 个答案:

答案 0 :(得分:0)

正如我在原始帖子中添加的评论中所说,这个与未构建的工作流程相关的问题确实通过针对KBO23579中概述的Microsot .Net Framework 4 Extended的补丁解决,该补丁尚未公开(在这篇文章发表时)。

这个解决方案是微软通过支持电话提供的,因此我受到该电话的条款和条件的约束,这使我无法在官方知识库文章可用之前分发补丁链接,我将发布链接。遗憾。

答案 1 :(得分:0)

适用于我们的修补程序:http://support.microsoft.com/kb/2249629