是否可以创建 Azure DevOps 组织或项目的备份?

Is it possible to create a backup of an Azure DevOps organization or project?

是否可以备份 Azure DevOps 组织或项目? 我在组织、项目甚至管道设置中都找不到这个功能。 在 documentation 中,我发现数据是使用 blob 和 SQL 存储等 Azure 服务复制的。这很好,但是如果您想在您自己的服务器或本地计算机中拥有您的组织的副本,例如,一个 zip 文件,该怎么办? 我发现的唯一可能性是导出构建和发布管道并克隆存储库,但这远非完整备份。

截至撰写本文时(2019 年 1 月 30 日),无法执行此操作。

您可以在 yaml 中构建(管道很快将在 yaml 中可用)。但是作品 items\artifacts\etc 并不能真正导出。

2021 年更新

有很多方法可以做到这一点,但它们并不容易或简单:

1) 手册:导出工作项/下载 Repos 的 Zip

Microsoft 在此处记录了导出工作项目等项目的功能:https://docs.microsoft.com/en-us/azure/devops/boards/work-items/email-work-items?view=azure-devops&tabs=browser#export-list-as-csv

还有一种方法可以从 devops 本身下载您的存储库:

不能对工作项执行相同的操作,但如下所述,工作项可以由其他人检索 API。

2) 手册:使用 REST API / Libgit2sharp

我们使用了REST API and this repo here to automate the scripts for a while. We changed the backup part of the script to instead clone a copy of the code to our blob storage using Libgit2sharp的组合。

3) 自动:使用 Backrightup

在我们自己努力解决这个问题,并且有许多客户出于监管原因(例如恶意承包商的安全)要求这样做之后,我们最终构建了 BackRightUp。 Backrightup 是专用于 Azure devops 的 backup/restore 产品。它备份(并可以恢复)Azure Devops 中的所有内容,包括工作项、存储库、wiki、测试用例、发布等。