使用团队项目集合组织服务器
您可以通过对团队项目进行分组并为其分配相同的资源,来更有效地管理这些团队项目。 例如,可以将具有类似要求或目标的项目分为一组,例如,与特定基本代码相关的所有项目。 然后,可以将该分组作为具有其自己的用户组、服务器资源和维护计划的自治资源进行管理。 在 Team Foundation Server (TFS) 中,可以将多个团队项目组成一个或多个称为“团队项目集合”的组织单元。 团队项目集合是用于在 TFS 内定义和控制一组团队项目的组织结构。 创建集合时,应指定此集合中的团队项目可使用的逻辑和物理资源。 这些项目使用的所有项目和数据存储在此集合的一个数据库中。
团队项目集合为服务器管理员提供了下列优势:
一个用于存储每个集合中每一项目的所有数据的数据库。 管理员可以独立于其他集合备份和还原此数据库。 管理员也可分离团队项目集合,将其备份,然后还原到不同的 TFS 部署中。
一种管理员在管理开发工作所需的资源时可使用的可伸缩方法。 管理员可以重新分配资源,以更好地满足集合中的项目需求。
团队项目集合为项目管理员提供了下列优势:
一组可共享报表、工作项、过程指南和基本代码的相关项目。
可根据集合中的项目需求生成、分支、合并和迭代的自治基本代码。 可以正式管理集合外部的代码依赖项。
如果创建多个集合,可以将这些集合的所有数据库存储在一个 SQL Server 中,也可以在一个或多个实例之间分发数据库。
下图演示团队项目集合的数据库如何与 TFS 的逻辑体系结构集成:
安装 TFS 时,可以创建包含所有团队项目的默认集合,也可以延迟创建集合。 但是,在可以创建第一个团队项目之前,必须至少创建一个集合。 所有项目必须在集合中创建。
如果从早期版本升级 TFS,将创建默认集合,并且将在此集合中存储所有现有项目。 安装或升级之后,您可以创建多个集合,以便更好地满足组织需求。 此外,您可以通过将各个团队项目集合从部署中分离、备份其数据库、运行当前版本 TFS 将其还原至部署,以及使用配置功能向导将 TFS 2012 的功能添加到该集合中的项目,有选择性地对该集合进行升级。 有关更多信息,请参见Move a Team Project Collection和更新升级的团队项目以访问新功能。
创建多个团队项目集合的优势
如果创建多个集合,您可以更好地将一个基本代码或其他项目分组的运行需求同其他分组的运行需求分隔开来。 由于每个集合的数据存储在其自己的数据库中,因此,您可以独立于部署中的其他集合来管理每个集合的诸多方面。 例如,您可以单独停止和启动每个集合。 因此,您可以将每个集合的维护操作安排在不同时间。
由于每个集合都具有其自己的用户集和权限集,因此,您可以通过将不同基本代码隔离在不同集合中来帮助提高运行安全。 然后,您可以将用户只添加到与此特定基本代码相关的项目所在的集合中。
创建多个团队项目集合的劣势
如果创建多个集合,则会增加 TFS 部署的复杂性。 必须备份和还原每个集合的数据库,同时,其他管理和维护任务也会根据您拥有的集合数成比例增加。 例如,必须单独管理每个团队项目集合的用户集和权限集。
此外,在确定是否创建多个集合时,应考虑以下事实:
不能跨集合链接工作项。
不能跨集合分支或合并代码。
不能跨集合创建查询。
您可以在同一集合中的多个团队项目之间执行所有上述功能。 如果开发工作将受益于代码分支和合并功能,或者您必须查询与同一代码相关的工作项的状态,您应当考虑将团队工作合并到一个集合的项目中。
常规任务
主题 |
描述 |
---|---|
组织资源以支持团队项目:可以创建一个或多个团队项目集合,以便组织和支持相关开发项目。 |
|
向现有团队项目集合添加资源:在创建团队项目集合之后,可以向此集合添加 SharePoint Web 应用程序或正在运行 SQL Server Reporting Services 的服务器。 |
|
准备团队项目集合数据库还原到不同的 TFS 部署:通过分离团队项目集合,您可以停止所有工作,并保存将集合附加到不同配置所需的配置数据。 您将需要在备份数据库以准备移动、部分升级或者还原各团队项目集合前执行此操作。 |
|
更改团队项目集合的位置:可以将团队项目集合从一个 Team Foundation Server 部署移至另一个部署。 |
|
重新组织团队项目集合中的项目:可以更改集合中的项目组织,方法是:拆分集合并删除每个集合中的项目,直到两个集合具有一组唯一的项目为止。 |
|
启动或停止团队项目集合:可以停止团队项目集合,以便进行维护或更新 Team Foundation Server 所依赖的基础组件。 |
|
更改集合中的团队项目的资源:可以更改集合中的团队项目的可用资源,例如,集合中的项目所使用的 Web 应用程序。 此外,还可以在集合级别更改用户权限和组。 |
|
删除团队项目集合:可以增加其他团队项目集合的可用资源,并通过删除没有任何活动或可行项目的集合来简化部署。 |