如何将Azure DevOps中的变量组导出并迁移至其他Azure DevOps项目
Azure DevOps变量组跨项目迁移操作指南
前提准备
- 你需要在源、目标两个Azure DevOps项目中都拥有「项目管理员」或「变量组管理员」权限
- 若使用CLI批量操作,需提前安装Azure CLI以及Azure DevOps扩展:
az extension add --name azure-devops
方法一:手动导出导入(适用于变量组数量≤5的场景)
步骤1:导出源项目变量组内容
- 打开源Azure DevOps项目,依次进入「管道」-「库」-「变量组」
- 点击需要迁移的变量组,逐个记录变量的名称、值、是否保密的属性,以及变量组本身的名称、描述、权限配置
- 保密变量默认在页面隐藏,需要点击显示按钮获取明文值后手动记录
注意:保密变量无法通过页面批量导出,必须手动逐个核对记录
步骤2:导入到目标项目
- 打开目标Azure DevOps项目,依次进入「管道」-「库」-「变量组」
- 点击「+ 变量组」,按照记录的源变量组信息填写名称、描述,逐个添加变量并对应设置保密属性、填写变量值
- 所有信息核对无误后点击保存即可
方法二:Azure CLI批量迁移(适用于变量组数量较多的场景)
步骤1:登录并配置默认组织
执行登录命令,按照提示完成身份验证:az login
设置默认的Azure DevOps组织地址,替换为你自己的组织域名:az devops configure --defaults organization=https://dev.azure.com/你的组织名称
步骤2:导出源项目变量组
首先获取源项目所有变量组的ID列表:az pipelines variable-group list --project "源项目名称" --query "[].id" -o tsv
根据返回的ID逐个导出变量组为JSON文件,替换对应参数:az pipelines variable-group show --group-id 变量组ID --project "源项目名称" -o json > 自定义变量组文件名.json
步骤3:调整导出的JSON文件
打开导出的JSON文件,删除以下系统生成的无效字段:
idcreatedBycreatedOnmodifiedBymodifiedOnprojectReference
注意:如果变量组包含保密变量,导出的JSON中对应值会显示为
null,需要手动在JSON中补充明文值,也可以导入完成后在目标项目页面手动填写
步骤4:导入到目标项目
执行命令在目标项目中创建变量组:az pipelines variable-group create --project "目标项目名称" --name "变量组名称" --variables @调整后的JSON文件名.json
有多个变量组需要迁移的话,重复上述导出、调整、导入的步骤即可
迁移后验证
- 导入完成后逐一核对所有变量的名称、值、保密属性是否和源项目一致
- 若源变量组配置了特殊访问权限,需要在目标项目的变量组设置中重新配置对应角色的访问权限
- 之前关联了该变量组的管道,需要在目标项目的管道设置中重新绑定新的变量组,执行测试运行确认配置生效
内容的提问来源于stack exchange,提问作者itye1970
相关产品推荐
相关产品推荐

