删除项目
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
如果项目已过时,可以在 Azure DevOps 中将其从组织或集合中删除 。 同样,如果要从本地 Azure DevOps Server 迁移到 Azure DevOps Services,则可能需要删除项目。 删除项目还可以通过将项目限制为仅那些当前正在使用的项目来增强导航。
注意
先决条件
- 权限:
- 可选:如果要在不还原项目数据的情况下访问项目数据,请先保存项目数据,然后再删除项目数据。
保存项目数据
使用以下过程保存用户最关心的数据,例如源代码、生成数据和工作项。 此过程是可选的,在删除项目之前,可能需要考虑一些事项。
源代码和自定义生成模板: 将文件下载为 zip 文件。 选择存储库、文件或文件夹,然后选择“下载为 Zip”。 或者,选择“下载”以下载当前所选文件夹中的所有文件或当前选定的文件。
此过程不会保存任何更改历史记录或指向其他项目的链接。 如果使用 Git, 请克隆存储库 以保留完整的项目历史记录和所有分支。
生成数据:若要在删除生成文件夹中保存日志和数据,请参阅 “查看生成结果”。
工作项跟踪数据:创建工作项查询并使用 Excel 将其打开。 保存 Excel 电子表格。
此过程不会保存指向其他项目的任何附件、更改历史记录或链接。
有关详细信息,请参阅我们的 数据保护概述。
删除项目
使用 Web 浏览器执行软删除。 28 天后,如果未在该时间内还原,项目将永久删除。
(
https://dev.azure.com/{yourorganization}
) 登录到组织。选择 组织设置。
选择“项目”,选中要删除的一个或多个项目,然后选择“删除”。
输入项目名称确认删除,然后在弹出屏幕中选择“ 删除 ”。
项目被删除,最多可以还原 28 天。 已删除的项目将从项目列表中删除。
删除删除项目后保留的报表
如果项目使用了 SQL Server 报告,但未删除外部项目,则可以使用 SQL Server 报表管理器删除报表。 在项目集合页中,删除与已删除项目对应的文件夹。
还原已删除的项目
如果无意中删除 Azure DevOps 中的项目,可以在删除项目后的 28 天内还原该项目。
(
https://dev.azure.com/{yourorganization}
) 登录到组织。选择 组织设置。
选择“ 概述”,然后向下滚动到“最近删除的项目”。
突出显示要还原的项目,然后选择“ 还原”。
登录到实例(
http://{ServerName:8080/tfs/}/{CollectionName}
)。选择“管理员设置”。
选择“项目”,然后向下滚动到最近删除的项目。
突出显示要还原的项目,然后选择“ 还原”。
注意
UI 不支持还原 Azure DevOps Server 2019 的团队项目。 使用以下 REST API 或 PowerShell 方法还原已删除的团队项目。 有关详细信息,请参阅 Projects-Update REST API。
使用 REST API 还原项目
警告
若要还原已使用的名称的项目,必须先重命名项目,然后才能还原该项目。 若要重命名项目,请在请求正文中输入以下文本: "name":"new name"
打开浏览器窗口并输入使用以下格式的 URL:
'http://ServerName:8080/tfs/DefaultCollection/ProjectName'
例如,若要连接到名为 FabrikamPrime 的服务器,请输入:“”。http://FabrikamPrime:8080/tfs/
默认端口为 8080。 如果未使用默认值,请指定服务器的端口号和目录。
使用以下请求获取已删除项目的列表:
GET http://ServerName:8080/tfs/DefaultCollection/_apis/projects?stateFilter= deleted&api-version=5.0-preview.3
使用以下请求还原已删除的项目:
PATCH http://ServerName:8080/tfs/DefaultCollection/_apis/projects/{projectId}? api-version=5.0-preview.3
请求正文
{ "state" : "wellFormed" }
使用 PowerShell 还原项目
执行以下 PowerShell 脚本以获取已删除项目的列表,并确保更新
$collectionUrl
。$collectionUrl = "https://localhost/defaultcollection" (irm -Uri "$collectionUrl/_apis/projects?stateFilter= deleted&api-version=5.0-preview.3" -UseDefaultCredentials).value
将显示类似于以下屏幕截图的内容:
使用以下脚本还原项目。 请务必更新
$collectionUrl
和$projectName
。$collectionUrl = "https://localhost/defaultcollection" $projectName = 'Project1' $project = (irm -Uri "$collectionUrl/_apis/projects?stateFilter= deleted&api-version=5.0-preview.3" -UseDefaultCredentials).value | where {$_.name -eq $projectName} irm -Uri ($project.url + "?api-version=5.0-preview.3") -UseDefaultCredentials -Method PATCH -Body '{"state":"wellFormed"}' -ContentType 'application/json'
项目和关联的数据将还原。
常见问题
请参阅以下有关在 Azure DevOps 中删除项目的常见问题。
问:删除一个项目后,为什么剩余项目中的工作项仍具有指向已删除项目工作项的链接?
答:删除项目后 24 小时内删除工作项。
问:我删除了 Azure DevOps 中的项目,但在 Visual Studio 团队资源管理器中,它仍然存在,我该怎么办?
答:在永久删除项目之前等待 28 天。