我有一个 TFS 服务器安装,随着时间的推移,它已经从 TFS 2005 升级到 TFS 2008,然后升级到 TFS 2010。在安装的生命周期中,已经创建了很多项目并使用了不同的项目模板。MSF 敏捷 4.0、4.1、4.2 和 5.0。和一些 MSF CMMI 的。
我想做的是“替换”用于所有这些项目的项目模板,以使用一个新的通用模板:Microsoft Visual Studio Scrum 1.0。
我知道 TFS 项目模板用作创建新项目的模板,并且在创建后无法修改 tfs 项目定义。
到目前为止,仅使用了 TFS 的版本控制和构建服务器部分,并且没有现有的工作项类型。
此外,所有项目和构建脚本都取决于源代码路径保持不变。
正如我所看到的,我有以下选择:
使用正确的项目模板创建新的 TFS 项目,然后将源代码移动/分支到新项目。
- 所有代码都移至临时团队项目。
- 旧项目被删除
- 创建具有原始名称和正确流程模板的新项目
- 代码移至新的团队项目
临时团队项目已删除
所有构建定义都需要重新创建,这不是一个选项。
源代码移动/分支将“弄乱”版本控制历史
通过弄乱版本控制历史,我的意思是当您移动源代码时,它将在幕后对原始位置执行删除 + 源重命名,并且历史仍将位于旧项目中。这将使在历史记录中的搜索变得困难,如果我真的删除了旧项目,我将在源代码移动之前丢失所有历史记录。
这对我来说真的不是一个选择,因为支持正在构建的不同应用程序需要多年的代码更改历史。
使用 TFS 迁移工具迁移到另一个 TFS 项目
- 这与第一个解决方案具有相同的缺点
替换/导入工作项类型、安装新报告、创建新 SharePoint 站点
对于每个 tfs 项目
使用“witadmin deletewitd”删除现有工作项定义
使用“witadmin importwitd”从新流程模板导入每个工作项定义
使用“witadmin importcategories”导入工作项类别
删除报表服务器项目文件夹中的旧报表
从新流程模板上传报告定义
使用报告管理器修改用于报告的数据源以指向正确的共享数据源(TfsReportDS 和 TfsOlapReportsDS)
将报表参数 ExplicitProject 默认值修改为“”(空字符串)并禁用提示用户选项。
使用 stsadm 导出旧 SharePoint 网站中的文档
删除旧的 SharePoint 网站
使用 TFS2010 Agile Dashboard 站点模板重新创建共享点站点
激活站点功能“Team Foundation Server Scrum 仪表板”
在 TFS 项目设置 -> 项目门户设置中:启用“团队项目门户”并确保 url 正确。启用“报告和仪表板引用此团队项目的数据”
最后..
处理仓库
处理分析数据库
尽管这涉及很多小步骤,但这看起来更有吸引力,因为此选项不会强迫我移动源代码,并且我现有的构建定义将保持不变。
我的问题:
还有其他方法可以实现我没有提到的工作项类型的替换吗?
和/或我是否遗漏了最后一个解决方案中的任何步骤?