1

所以,我之前搞砸了。我试图将报告服务安装到 TFS 中(对于单个服务器,我需要删除现有的 TFS 配置并使用报告重新创建它)。我没有注意到我无法使用客户端操作系统安装报告服务,所以我回到了我开始计算的地方 - 有点。

在我删除配置之前,我使用了 TFS Backup Power Tool (http://visualstudiogallery.msdn.microsoft.com/c255a1e4-04ba-4f68-8f4e-cd473d6b971f) 来备份我的项目(就像我经常使用的那样) ,所以我有一系列备份可供提取。但是,我很难将我的项目恢复到 TFS。

最初,我配置了 TFS,运行恢复工具并从备份中放回所有数据库,但这不起作用,因为我无法在 TFS 管理控制台中查看集合,因此无法访问我的项目。相反,我在 TFS 管理控制台中创建了一个新集合,在 Visual Studio 中创建了一个新的团队项目,并尝试将文件从我的旧项目复制到新项目中。

我可以在那里看到我的旧团队项目,但如果我尝试从中加载解决方案,则会收到错误消息:

TF10175: 团队项目文件夹 $/Stuff 不存在。请联系您的 Team Foundation Server 管理员并要求创建它。

但是,如果不简单地创建一个新项目,将其映射到本地,然后我将再次没有我的文件,直到我重新复制它们,我就找不到任何特定的方法来创建该文件夹。现在,我可以做到这一点,并且与我的旧团队项目没有任何联系,除了我还希望我的所有工作项目从它到我的新项目中。

这是我的问题 - 我希望能够将一切恢复到这次考虑不周的升级之前的状态。我想在 TFS 源代码控制中查看我的团队项目并加载它,并且能够访问我的所有工作项。

现在,我可以将我的整个项目复制到新的团队项目中,我在这方面做得很好,但这并没有给我我的工作项。我尝试使用 TFS 集成工具 (http://tfsintegration.codeplex.com/) 将工作项从一个项目复制到另一个项目,但除非我在 Visual Studio 中连接它,否则它无法看到旧的团队项目。如果它在 VS 中打开,我无法执行该操作,因为“该进程无法访问该文件,因为它正在被另一个进程使用。” 当我关闭 VS 时,我的旧团队项目消失在源代码管理中,并且集成工具再也看不到它。

因此,这似乎是我的两个选择:

1)任何人都可以分享一些关于如何从源代码管理加载我的旧团队项目的见解(当前未绑定,但是当我绑定它时,我得到 $/Stuff 不存在错误)所以我可以访问所有文件+工作项?

或者

2) 任何人都可以分享一些关于如何将工作项从旧项目移动到新项目的见解吗?而且我对使用 Excel 获取基本信息的方法不感兴趣——我需要那里的所有链接,而那些显然不映射到 Excel 的链接。

感谢您的任何帮助,您可以提供!

4

1 回答 1

1

所以,从来没有得到任何回应——不过没关系。这是我在此期间所做的,现在终于附加了一个集合,来自旧数据库的备份(通过 TFS Backup Powertool 保存)和我所有的工作项目。

我在 TFS 管理控制台中重新创建了与以前的集合同名的集合,然后再次在 Visual Studio 中创建了一个团队项目,但使用了新名称。然后,我只将我想要的项目备份从 TFS Backup Powertool(不包括 TFS 配置数据库或集合数据库)恢复到其原始名称(实际上没有选择那个)。

在 Visual Studio 中,我连接到 Visual Studio 不同实例中的新项目和原始项目(原始项目位于源代码管理中)。我手动将我的每个工作项从旧项目复制到新项目(主要是因为我为我的客户保留项目历史非常重要——因此无法使用 Excel 导出/导入)。这涵盖了工作项目。接下来我需要源代码,但这很简单,只需将本地文件复制到新映射的新项目路径中,然后将它们添加到源代码控制资源管理器中。我终于检查了一切,直到今天都很好。

我在 Visual Studio 中连接到 TFS 并收到 TF30046 错误(本质上 InstanceID 与预期不匹配)。显然,如果您在备份之间更改 TFS 的配置,Visual Studio/TFS(不确定是哪个)将为您的数据库创建一个新的 InstanceID。看看http://msdn.microsoft.com/en-us/library/bb909690(v=vs.90).aspx有关如何更改此 InstanceID 的信息。但是,与该文档中的步骤不同,我没有 TFSBuild、TFSIntegration 或 TFSVersionControl。重新安装 TFS2010 后一个小时后,我仍然没有它们。没关系 - 在 SQL Management Studio 中的“属性”中查找包含所需新项目的数据库,在“扩展属性”下,您会找到您正在寻找的 InstanceID。复制 Visual Studio 给出的值作为预期值(包括破折号 - 即使我的原始值没有它们),好的,在 Visual Studio 上重新连接,项目将像雨一样加载。

于 2012-04-18T12:08:11.377 回答