Azure DevOps 存储库的备份

backup of Azure DevOps repositories

我正在寻找每周备份 Azure DevOps 存储库的选项。 这在开箱即用的 Azure DevOps 中是否可行?如果不是,其他选择是什么。

您需要做的就是创建一个每周安排的管道。备份步骤:

1.Check 为管道配置时间表 ,我建议您可以创建一个经典的构建管道,该管道将安排在一周中的一天:

如果您只想在源代码库更改时进行备份,请启用 Only schedule builds if the source or pipeline has changed

2.The 管道的第一个任务可以是 CMD 任务,内容为:git clone --mirror https://{Your PAT}@dev.azure.com/{OrgName}/{ProjectName}/_git/{RepoName}

然后您可以使用 ArchiveFiles 任务将备份压缩到 Backup.zip 文件中。 关于这部分的更多细节你可以查看我的另一个post。 (你也可以用 buildId 命名 backup.zip,在 archiveFile 输入中使用这个 $(Build.ArtifactStagingDirectory)/Backup-$(Build.BuildId).zip

3.After 您需要一个最终任务来存储 Backup.zip/Backup-$(Build.BuildId).zip 文件。

如果要将备份存储在 Azure 存储中,可以使用 AzureFileCopy 任务。 (类似上面的场景link~)

如果你想将备份存储在本地机器上,你可以使用Publish Build Artifact任务来发布工件。然后只要构建有效,您就可以在本地机器上下载它。

您还可以创建一个 github 私有存储库来存储备份,每次在管道结束时将新的 Backup.zip 提交到 github 存储库。 (使用带有 git 命令的 CMD 任务。)

另外:Azure DevOps Repos synchronization between Organization,你又多了一个方向。不是备份,而是同步 Azure DevOps Repos 和 Github repo。