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

如何批量为多个Bitbucket代码仓库授予用户访问权限

Bitbucket批量配置仓库权限解决方案

一、UI端批量操作方案

  • 若你使用Bitbucket Cloud:进入对应工作区的「访问管理」页面,筛选所有私有仓库后可批量勾选,直接添加目标用户并选择读取权限后提交即可,不需要单独进入每个仓库配置。
  • 若你使用Bitbucket Server/Data Center:如果100多个仓库归属同一个项目,直接在项目级权限配置中给目标用户授予读取权限,项目下所有仓库会自动继承该权限,无需额外配置仓库级权限;如果仓库分散在多个项目,也可以在全局仓库列表页批量选中目标仓库后统一配置权限。

二、Bash+curl调用API批量配置方案

该方案适配所有Bitbucket版本,灵活度更高,适合仓库数量多、分布零散的场景。

前置准备

你需要先生成个人访问令牌(PAT),令牌需要开启仓库权限读写的相关授权范围。

参考脚本

# 替换为你的Bitbucket域名,Cloud版本为api.bitbucket.org/2.0
BITBUCKET_DOMAIN="https://your-bitbucket-domain.com/rest/api/1.0"
# 替换为你的个人访问令牌
PAT="your-personal-access-token"
# 替换为目标用户的账号名
TARGET_USER="target-username"
# 替换为要授予的权限,读取权限对应'repo_read'
PERMISSION="repo_read"

# 第一步:拉取所有你有权限管理的私有仓库列表,提取仓库的project key和repo slug
curl -s -H "Authorization: Bearer $PAT" "$BITBUCKET_DOMAIN/repos?limit=1000" | jq -r '.values[] | select(.is_private == true) | .project.key + "/" + .slug' > repo_list.txt

# 第二步:循环给每个仓库授予目标用户读取权限
while read repo; do
  echo "正在配置仓库 $repo 的权限..."
  curl -s -X PUT -H "Authorization: Bearer $PAT" -H "Content-Type: application/json" \
    "$BITBUCKET_DOMAIN/projects/${repo%/*}/repos/${repo#*/}/permissions/users?name=$TARGET_USER&permission=$PERMISSION"
  echo "配置完成"
done < repo_list.txt

注意:脚本依赖jq工具处理JSON返回结果,运行前请先确保环境已安装该工具。如果是Bitbucket Cloud版本,接口路径需要对应调整为Cloud版本的REST API规则。

内容的提问来源于stack exchange,提问作者Mikhail V.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 09:18:00