拆分团队项目集合

随着你的业务的变化,你可能希望将单个团队项目集合拆分为多个团队项目集合。 例如:

  • 希望集合中的项目与组织中的业务单元一致,并且集合中的项目现在归不同单元所有。

  • 从 TFS 的早期版本升级而来,仅有一个集合,并且出于安全性或业务一致性原因希望将项目组织到不同的集合中。

  • 希望将集合中某些项目的所有权更改为属于具有自己的 TFS 部署的远程办公室所有。 这种情况要求你先拆分集合,然后将拆分后的其中一个集合移到远程办公室部署。

    备注

    本主题中的过程仅支持拆分团队项目集合。如果要在拆分某个集合后移动该集合,请参阅移动团队项目集合.

主题内容

若要拆分团队项目集合,请按照以下步骤进行操作:

  1. 准备拆分集合:

    1. 分离集合

    2. 备份集合数据库

  2. 拆分集合:

    1. 使用其他名称还原集合数据库

    2. 附加原始集合数据库

    3. 附加重命名的集合数据库

    4. 从拆分集合中删除项目

    5. 启动集合

  3. 配置拆分的集合:

    1. 为拆分的团队项目集合配置用户和组

    2. 为集合中的项目配置用户和组

问题解答

  • 问:我的部署使用报表。 拆分集合时,我是否需要执行任何其他步骤?

  • 问:是否可以拆分使用 SharePoint 产品的集合以支持集合中的一个或多个团队项目?

  • 问:如果我拆分了具有与 Project Server 集成的项目的团队项目集合,是否有特殊的注意事项或者要执行的步骤?

  • 问:如何拆分针对实验室管理配置的集合?

准备工作

确保你在服务器上和 SQL Server 以及 TFS 中是管理员。 如果你不是管理员,则添加为管理员

1-a.分离集合

先从集合运行的 TFS 部署中分离该集合。 分离集合将停止所有作业和服务以及集合数据库。此外,分离过程通过集合特定的数据从配置数据库进行复制,并将其保存为团队项目集合数据库的一部分。

分离团队项目集合

  1. 在承载要拆分的集合的服务器上打开 Team Foundation 的管理控制台。

  2. 选择**“团队项目集合”**,然后在集合列表中选择要拆分的集合。

    在此示例中,管理员选择了“TestProjects”。

    “默认集合”具有特殊的注意事项

    提示

    团队项目集合的默认名称是“DefaultCollection”。如果你拆分此数据库,确保为第二个集合取一个截然不同的名称,因为这是连接时的默认选项。

  3. 在**“常规”选项卡上,选择“停止集合”**。

    给客户发消息,让他们知道原因

    “团队项目集合状态原因”对话框随即打开。 将向用户显示你输入的文本。 选择“停止”,并等待集合停止。 当它停止时,其状态将显示为**“脱机”**。

  4. 在**“常规”选项卡上,选择“分离集合”**。

    将打开**“分离团队项目集合向导”**。

    已停止后再分离

  5. (可选)在**“提供团队项目集合的维护消息”页的“维护消息”**中,为可能尝试连接到此集合中的项目的用户提供消息。

  6. 在**“查看将用于拆分团队项目集合的设置”页上,查看详细信息。 若要更改任何设置,请选择“上一步”。 如果这些设置似乎是正确的,请选择“验证”**。

  7. 当所有就绪检查都成功完成时,请选择**“分离”**。

  8. 当所有过程都已完成时,在**“监视团队项目集合分离进度”页中,选择“下一步”**。

  9. (可选)在**“查看此团队项目集合的补充信息”**页上,选择或记下日志文件的位置,然后关闭向导。

    团队项目集合不再显示在管理控制台中的集合列表中。

1-b.备份集合数据库

分离集合后,必须先备份该集合数据库才能使用其他名称将副本还原到服务器。 该副本将变为要拆分到另一个集合的原始集合部分的数据库。 若要执行此任务,必须使用随 SQL Server 提供的工具。

使用与 SQL Server 附带提供的工具

备份集合数据库

  • 有关如何手动备份并还原单个数据库的信息,请参阅 Microsoft 网站上的以下页面,并确保选择与你的部署匹配的 SQL Server 版本:在 SQL Server 中备份和还原数据库配置备份日程安排和计划.

    重要

    如果你的原始部署使用的是 SQL Server Enterprise Edition 或 SQL Server Datacenter Edition,并且你要将数据库还原到运行 Standard Edition 的服务器,则必须使用通过禁用 SQL Server 压缩生成的备份集。只有禁用了数据压缩,才能成功地将 Enterprise Edition 或 Datacenter Edition 数据库还原到运行 Standard Edition 的服务器。若要禁用压缩,请按照 Microsoft 知识库文章中的步骤进行操作。

2-a.还原集合数据库

拆分集合时,必须将集合数据库的备份还原到配置为支持 TFS 部署的 SQL Server 实例。 还原数据库时,必须为它提供与原始集合数据库的名称不同的名称。

提示

以下步骤提供如何使用 SQL Server Management Studio 在 SQL Server 2012 中还原团队项目集合数据库的概述。有关如何手动备份并还原单个数据库的信息,请参阅 Microsoft 网站上的以下页面,并确保选择与你的部署匹配的 SQL Server 版本:在 SQL Server 中备份和还原数据库

使用新名称还原集合数据库

  1. 打开 SQL Server Management Studio 并连接到承载要拆分的团队项目集合的数据库的实例。

  2. 在对象资源管理器中,展开**“数据库”,打开要拆分的数据库的子菜单,然后依次选择“任务”“还原”“数据库”**。

    “还原数据库”窗口在**“常规”**页上打开。

    使用与 SQL Server 附带提供的工具

  3. 在**“源”中,确保选中团队项目集合数据库。 在“目标”中,提供数据库的副本的名称。 保留 Tfs_ prefix,但在前缀后给它一个不同的名称。 理想情况下,该名称将是拆分的团队项目集合的名称。 在“还原计划”中,确保要还原的备份集是你要还原到的备份集。 若要确保它们是有效的集,请选择“验证备份媒体”,然后在“选择页面”中选择“选项”**。

  4. 在**“还原选项”中,使所有复选框保持空白。 确保“恢复状态”设置为“RESTORE WITH RECOVERY”。 在“尾日志备份”中,清除“使元数据库保持正在还原状态”复选项,然后选择“确定”**。

    提示

    如果还原操作失败并显示指示数据库正在使用中并且无法覆盖的错误消息,你可能需要手动配置所有逻辑文件名称以反映数据库的新名称。在“选择页面”中,选择“文件”,选择要还原的每个文件旁边的省略号按钮,并确保文件的名称反映新数据库的名称,而不是旧数据库的名称。然后再次尝试还原操作。

2-b.附加原始集合数据库

使用其他名称还原数据库之后,必须将原始集合数据库重新附加到 TFS 部署。

备注

如果部署使用 SharePoint 产品,且 TFS 的服务帐户不是“服务器场管理员”组的成员,则当附加该集合时,将出现警告。此行为是预期的行为。

附加集合

  1. 打开 Team Foundation 的管理控制台。

  2. 选择**“团队项目集合”,然后选择“附加集合”**。

    将打开**“附加团队项目集合向导”**。

  3. 在**“选择要附加的团队项目集合数据库”页的“SQL Server 实例”**中,提供承载集合数据库的服务器和实例的名称(如果未列出)。

  4. 在**“数据库”**列表中,选择要附加的集合数据库。

    选择原始集合数据库

  5. 在**“输入团队项目集合信息”页的“名称”中,提供该集合的名称(如果未提供)。 由于这是原始集合,你可以选择将名称保留为与之前相同。 在“说明”**中,可以选择提供该集合的说明。

  6. 在**“查看将用于附加团队项目集合的设置”**页上,查看信息。

  7. 若要更改任何设置,请选择**“上一步”。 如果所有设置都正确,请选择“验证”**。

  8. 当所有就绪检查都成功完成时,请选择**“附加”**。

  9. 当所有过程都已完成时,在**“监视团队项目集合附加进度”页中,选择“下一步”**。

  10. (可选)在**“查看此团队项目集合的补充信息”**页上,选择或记下日志文件的位置,然后关闭向导。

  11. 团队项目集合将显示在管理控制台中的集合列表中。 如果集合状态列出为“联机”你必须在继续执行前停止它。从列表中选择集合,并在“常规”选项卡上选择“停止集合”

    如果已启动附加集合,则将其停止

2-c.附加重命名的集合数据库

附加原始集合数据库之后,必须将重命名的集合附加到 TFS 部署。 附加此集合后,它将保持停止状态。 直到所有重复的项目都移除之后才能启动该集合。

备注

如果部署使用 SharePoint 产品,且 TFS 的服务帐户不是“服务器场管理员”组的成员,则当附加该集合时,将出现警告。此行为是预期的行为。

附加重命名的集合数据库

  1. 打开 Team Foundation 的管理控制台。

  2. 选择**“团队项目集合”,然后选择“附加集合”**以打开向导。

  3. 在**“选择要附加的团队项目集合数据库”页的“SQL Server 实例”**中,提供承载重命名集合数据库的服务器和实例(如果尚未列出)。

  4. 在**“数据库”**列表中,选择重命名集合数据库。

  5. 在**“输入团队项目集合信息”页的“名称”**中,为重命名的集合键入与原始集合名称不同的名称。 理想情况下,这应该与你在没有 Tfs_ prefix 的情况下为重命名数据库提供的名称相匹配。

    确保名称是唯一的

  6. (可选)在**“说明”**中,键入该集合的说明。

  7. 在**“查看将用于附加团队项目集合的设置”页上,查看信息。 若要更改任何设置,请选择“上一步”。 如果所有设置都正确,请选择“验证”**。

  8. 当所有就绪检查都成功完成时,请选择**“附加”**。

  9. 当所有过程都已完成时,在**“监视团队项目集合附加进度”页中,选择“下一步”**。

    备注

    如果某个 SharePoint Web 应用程序支持该集合,则将针对该 SharePoint Web 应用程序的附加状态显示一个警告图标。同样,如果原始集合包含报表,将针对报表的附加状态显示一个警告图标。此行为是预期行为,可以将其忽略。

  10. (可选)在**“查看此团队项目集合的补充信息”**页上,选择或记下日志文件的位置,然后关闭向导。

  11. 集合的名称显示在管理控制台中的集合列表中,而且其状态应该显示为**“脱机”**。

    确保名称是唯一的

  12. 若要确保两个集合都附加了唯一的 ID,请在管理控制台中转到事件日志并打开两个集合附加操作的日志文件。 CollectionProperties 的 GUID 应该匹配。

    打开事件日志并检查属性

    在极少数 CollectionProperties GUID 匹配的情况下,你必须在继续执行前通过运行 TFSConfig 来将此 ID 更改为唯一 ID。Collection 命令 [TFSConfig] 在第二个带有 /clone 参数的集合上..

2-d.从拆分集合中删除项目

既然已有两个集合副本附加到 TFS,因此对于每个项目,必须从原始集合或重命名集合中删除,以使这两个集合不包含任何相同项目。

重要

一个项目不能存在于多个集合中。直到删除拆分集合之间所有重复的项目之后,才能启动重命名的集合。

从集合中删除项目

  1. 打开 Team Foundation 的管理控制台。

  2. 选择**“团队项目集合”**,然后在集合列表中选择因要拆分而停止的集合。

  3. 在**“团队项目”选项卡上的团队项目列表中,选择要从集合中删除的项目,然后选择“删除”**。

    提示

    你可以一次选择多个要删除的项目。

    每个集合中必须具有一个唯一项目集

  4. 选中**“删除工作区数据”复选框,保留“删除外部项目”复选框的未选中状态,然后选择“删除”**。

    如果**“删除外部项目”**复选框没有处于未选中状态并且你的团队项目配置为使用 实验室管理,则与该项目关联的虚拟机和模板将从 System Center Virtual Machine Manager 中删除。 它们将无法再用于重命名集合中的团队项目。

  5. 当你完成删除你不希望在原始团队项目集合中承载的项目时,请从集合列表中选择重命名的团队项目集合。 然后,在“团队项目”选项卡上,删除你不希望在新集合上承载的项目。

    可以同时删除多个项目

  6. 重复这些步骤,直到两个集合都包含一组唯一的项目。

2-e.启动团队项目集合

删除项目后,必须重新启动两个集合。

启动团队项目集合

  1. 打开 Team Foundation 的管理控制台。

  2. 选择**“团队项目集合”**,然后在集合列表中选择因要拆分而停止的集合。

  3. 在**“常规”选项卡上,选择“启动集合”**。

  4. 为使用新名称附加的集合重复步骤 2。

    删除项目后启动每个集合

3-a.为拆分集合配置用户和组

如果两个拆分集合都将保留在同一域中并且你希望允许原始集合的管理员访问这两个集合,则可跳过此过程。

拆分集合后,必须使用将管理这两个集合的用户和组更新这两个集合的权限组。

为两个集合配置管理员

3-b.为项目配置用户和组

如果两个拆分集合都将保留在同一域中并且希望允许原始集合中项目的用户访问这两个集合,则可跳过此过程。

为这两个集合配置管理员后,你或者这些管理员必须为用户和组配置对每个集合中的项目的访问权限。 你可能还需要为 SharePoint 产品 和 Reporting Services 中的用户配置权限,具体取决于你的部署。

为用户配置对团队项目的访问权限

问题解答

问:我的部署使用报表。拆分集合时,我是否需要执行任何其他步骤?

**答:**是的,你将需要在完成删除团队项目的操作后拆分报表,以便使这两个集合都有一组唯一的项目。 你还将需要重新生成数据仓库。

删除项目之后,必须将拆分集合所使用的报表移到另一个文件夹中,并且必须从原始文件夹中删除它们。

重要

报表文件夹会同时存在于两个位置上。确保在删除任何报表文件夹之前相应地移动所有报表。

将报表拆分到不同的文件夹中

  1. 在报表管理器中,将支持拆分集合的报表移到用于该集合的适当文件夹中。

    有关详细信息,请参阅 Microsoft 网站上的以下主题:移动项页

  2. 如果你的部署使用某个 SharePoint Web 应用程序,则你可能需要在移动报表之后再次修复连接,然后报表才会正确显示。 如果报表未正确显示,请按照上一过程中的步骤修复连接。

拆分报表并启动这两个集合后,你必须为 Team Foundation 重新生成仓库和 Analysis Services 的数据库。 拆分集合后,必须为部署执行此步骤以确保报表和面板正常工作,并确保与部署中的其他集合不发生冲突。

重新生成数据仓库和 Analysis Services 数据库

  1. 打开 Team Foundation 的管理控制台。

  2. 在导航栏中,选择**“报表”**。

  3. 在**“报表”中,选择“开始重新生成”**。

  4. 在**“重新生成仓库和 Analysis Services 数据库”对话框中,选择“确定”**。

    备注

    在“开始重新生成”操作完成之后,将继续重新生成仓库并继续重新填充数据。整个过程可能需要几个小时才能完成,具体取决于部署的规模和数据量。

问:是否可以拆分使用 SharePoint 产品的集合以支持集合中的一个或多个团队项目?

**答:**是的,但是你将需要为拆分集合执行其他步骤。

附加重命名的集合并移除所有重复项目后,必须修复与 SharePoint Web 应用程序的连接。 修复此连接可确保在 Web 应用程序与原始和重命名的集合之间正确设置所有连接。

如果你的部署使用 SharePoint 产品,强烈建议 TFS 的服务帐户是**“服务器场管理员”**组的成员。

备注

可以拆分团队项目集合,而无需将此成员资格授予 TFS 的服务帐户。但是,在附加该集合时会看到错误,需要执行额外步骤将项目重新连接到它们的门户网站。即使你的操作要求通常限制将此成员资格授予服务帐户,你也应考虑在拆分操作期间将该服务帐户添加到服务器场管理员组。

修复到 SharePoint Web 应用程序的连接

  1. 在承载你要将集合移至的部署的应用程序层的服务器上打开 Team Foundation 的管理控制台。

  2. 选择**“SharePoint Web 应用程序”**,在 Web 应用程序列表中,选择支持刚才所附加集合的 Web 应用程序。

    在选择列表中的 Web 应用程序后,将会显示**“修复连接”**按钮。

  3. 选择**“修复连接”,然后在“修复到 SharePoint Web 应用程序的连接”对话框中,选择“修复”**。

  4. 当“状态”窗口报告**“重新连接操作成功”时,请选择“关闭”**。 这可能需要几分钟。 此外,作为此过程的一部分,你可能会看到一些错误,因为这两个集合仍然使用相同的 SharePoint 默认站点位置作它们的团队项目门户网站。 这是预期的行为。

修复连接并启动两个集合之后,必须为每个集合中的项目重新配置团队项目门户网站以使这些门户网站反映那些项目的正确数据。

重新配置团队项目门户网站

  • 打开 团队资源管理器,连接每个团队项目集合,并且为每个团队项目配置 SharePoint 站点的 URL。 对于每个团队项目,依次选择**“设置”“门户网站设置”并确保选中“报表和面板引用此团队项目的数据”**复选框。

你可以继续在 SharePoint 产品 中使用相同网站集来支持这两个拆分集合。 这两个集合中的团队项目会使用与以前相同的团队项目门户网站。 所有门户网站都承载于支持原始团队项目集合的网站集上。 但是,此配置不但会使团队项目集合与网站集之间的一对一关系复杂化,而且还可能会增加还原部署的难度。 若要避免这种复杂性,可以拆分支持原始团队项目集合的网站集,以反映你对团队项目集合进行的拆分。

拆分网站集并重定向拆分团队项目集合以使用拆分网站集

  1. 有关如何拆分网站集的信息,请参阅在数据库之间移动网站集或你的版本的 SharePoint 产品的最新指南。

    提示

    请确保配置对网站集的用户权限和访问权限,以便与对团队项目集合的用户访问权限相匹配,如本主题中之前所述。

  2. 配置任何受影响的团队项目集合以使用拆分网站集,方法是打开管理控制台,从团队项目集合列表中选择集合,并在“SharePoint 站点”选项卡上选择**“编辑默认站点位置”**。

  3. 为每个集合中的团队项目重新配置团队项目门户网站,以便这些门户网站可反映这些项目的正确数据。

    有关详细信息,请参阅重新配置团队项目门户网站 (本主题的前面部分)。

问:如果我拆分了具有与 Project Server 集成的项目的团队项目集合,是否有特殊的注意事项或者要执行的步骤?

**答:**拆分团队项目集合后,你必须等待元数据作为 TFS 与 Microsoft Project Server 之间同步的一部分进行更新。 同步后,你的数据应在 Project Server 中正确显示。 有关详细信息,请参阅更改您的部署配置.

验证同步

你在拆分集合后无需执行任何步骤来继续同步集合和 Project Server 之间的数据,除非你还计划将集合移动到其他服务器。 在这种情况下,你必须遵循在拆分集合后移动集合的步骤。 有关详细信息,请参阅移动团队项目集合.

问:如何拆分针对实验室管理配置的集合?

**答:**你将需要执行多个额外步骤才能拆分此集合。 在开始拆分前,你将需要从集合中删除实验室管理资源,然后在拆分后,你将需要为每个拆分集合单独配置实验室管理资源。

开始拆分前,从集合数据库中删除 实验室管理 使用的资源。 这些资源包括虚拟机、模板、团队项目主机组和团队项目库共享。 在还原并附加集合之后将需要重新创建 Lab Management 资产。

删除 Lab Management 资源

  • 有关如何从指定团队项目集合中移除所有组主机、库共享和环境的信息,请参阅TFSConfig Lab /Delete 命令 (带有 /External 选项)。

完成拆分后,你必须重新创建团队项目主机组。 你还必须在 TFS 中重新创建团队项目库共享,并在 Microsoft 测试管理器 中重新创建虚拟机、模板和环境。

配置 Lab Management 资源

  1. 为 Team Foundation 配置应用程序层。

    有关详细信息,请参阅为 SCVMM 环境配置 Lab Management.

  2. 在新的 SCVMM 中重新创建黄金母版虚拟机和模板,并将虚拟机和模板导入团队项目集合中。

    有关详细信息,请参阅为 Lab Management 创建并存储虚拟机和模板.

  3. 为每个团队项目重新创建环境。

    有关详细信息,请参阅使用存储的虚拟机和模板创建 SCVMM 环境.