Contents
-
- 概述
-
- 使用方法
-
- 删除后不能恢复
-
- 获取TfsDeleteProject.exe
-
- 必要权限
-
- 操作说明
-
- 验证删除效果
1. 概述
Azure DevOps Server(原名TFS)是微软公司的研发管理平台产品,它使用团队项目(Team Project)作为管理数据的基本单元,团队项目中存储了开发团队的大量开发数据,包括需求、任务、迭代计划、源代码、持续集成和测试等大量研发数据。
随时企业开发过程的进展,DevOps服务器占用的磁盘空间会持续增长到几十TB,管理员就会考虑如何缩小服务器的磁盘空间,而缩小磁盘空间的最有效的方法是删除已经不需要的团队项目。例如我们可以将团队项目集合分隔为两个团队项目集合后,其中一个作为存档,另外一个生产使用,同时删除生产集合中的团队项目,以此缩小团队项目结合对应的数据库磁盘空间。
我们可以使用Web界面或控制台来删除团队,这两种方式删除团队项目是最快捷方式,但是也会由于多种异常原因导致删除过程中终止,同时它也不能彻底删除相关的数据,本文主要介绍使用命令行工具TfsDeleteProject.exe来彻底删除团队。
如果在创建团队项目的过程中出现异常,例如网络中断,我们也可以使用这个工具来删除异常的团队项目,从而恢复系统的正常使用。
2. 使用方法
1. 删除后不能恢复
需要特别注意,不像使用Web界面和控制台工具,它们删除团队项目后,系统会保留28天,在此期间我们还可以使用工具或接口来还原被删除的团队项目;
使用TfsDeleteProject.exe删除后的团队项目,如果没有备份数据,我们是不能还原团队项目,它会永久删除团队项目中的全部数据。
2. 获取TfsDeleteProject.exe
TfsDeleteProject.exe作为Visual Studio的一个组成部分,默认安装到了VS的的目录下,例如我们可以从Visual Studio 2022的这个目录中找到这个工具:C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer
3. 必要权限
运行这个工具前,你必须具备团队项目集合或服务器管理员(Team Foundation Administrators)的权限
4. 操作说明
TfsDeleteProject.exe作为一个命令行工具,它的基本格式和参数说明如下
>
>
> `TFSDeleteproject [/q] [/force] [/excludewss] /collection:URL TeamProjectName
> `
>
>
>
|-----------------|--------------------------------------------------------------------------------------------|
| 参数 | 说明 |
| /q | quiet,可选, 静默删除,即不需要管理员确认,可以直接删除团队项目;这个参数以便用在第三方工具集成DevOps的过程中,例如可是在第三方工具中直接删除DevOps中的团队项目 |
| /force | 可选,强制删除;在删除团队项目的过程中,即使某些组件不能删除(例如集成的SharePoint站点和报表),也需要强制删除当前团队项目 |
| /excludewss | 可选,不删除集成DevOps的SharePoint站点;一般在使用独立的SharePoint服务器过程中,我们需要使用这个参数,以便避免破坏SharePoint服务器中的数据完整性 |
| /collection:URL | 必需,团队项目集合的URL,例如http://devops-server/collection-name |
| TeamProjectName | 必需,需要被删除的团队项目的名称 |
5. 验证删除效果
- 我们可以使用Url在网页浏览器中查看已经被删除的团队项目,系统会提示团队项目已经不存在
- 可以在数据中查询对应的团队项目
- 但是需要注意,系统不会删除Cube中的数据;就是说已经被清洗到数据仓库中的数据,这个工具不会自动删除(注意Azure DevOps Server 2022已经移除了Cube功能)
https://www.cnblogs.com/danzhang
Azure DevOps MVP 张洪君