You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure环境下如何通过CLI创建Git分支、推送后锁定该分支?

在Azure DevOps中通过CLI实现分支级锁定

没问题!你要的分支级锁定在Azure DevOps里完全可以通过CLI实现——本质上是给目标分支添加分支锁定策略,限制其他人对该分支的修改、删除或强制推送操作。结合你现有的Git脚本,我给你整理了完整的实现步骤:

前提准备

首先确保你已经配置好Azure DevOps CLI:

  • 安装Azure CLI并添加DevOps扩展:
    az extension add --name azure-devops
    
  • 登录你的Azure DevOps组织(可以用浏览器登录,或者PAT令牌):
    az devops login --organization https://dev.azure.com/你的组织名/
    

修改后的完整脚本

把分支锁定命令整合到你现有的流程里,建议先把分支名存为变量(方便后续引用):

# 定义分支名(根据你的需求调整格式)
BRANCH_NAME="new_branch-%GIT_COMMIT%"

# 创建并推送新分支
git checkout -b $BRANCH_NAME
git push origin $BRANCH_NAME
git checkout master

# 给新分支添加锁定策略
az repos policy branch create \
  --branch $BRANCH_NAME \
  --repository-name 你的仓库名称 \
  --project 你的项目名称 \
  --organization https://dev.azure.com/你的组织名/ \
  --lock true \
  --allow-deletes false \
  --allow-force-pushes false

命令参数说明

  • --branch:指定要锁定的分支名称(这里用了前面定义的变量,和创建的分支保持一致)
  • --repository-name:你的Azure DevOps仓库名称(可以在仓库主页找到,或者用az repos list --project 你的项目名列出所有仓库)
  • --project:项目名称或项目ID
  • --lock true:启用分支锁定,禁止常规推送(只有策略管理员才能修改)
  • --allow-deletes false:禁止删除该分支
  • --allow-force-pushes false:禁止强制推送覆盖分支内容

额外提示

如果之后需要解锁分支,可以通过更新策略或者删除策略实现:

  • 更新策略(解锁):
    az repos policy branch update \
      --id 策略ID \
      --lock false \
      --allow-deletes true \
      --allow-force-pushes true
    
    (策略ID可以用az repos policy list --branch 分支名 --repository-name 仓库名查询)
  • 直接删除锁定策略:
    az repos policy delete --id 策略ID
    

内容的提问来源于stack exchange,提问作者matisa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 07:56:54