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

能否批量克隆Bitbucket项目下的所有仓库而非单个仓库?

Bitbucket 批量克隆项目下所有仓库的方法

当然有批量克隆的方法,下面给你两种实用方案,针对你提到的shcdemo工作区下的EAR项目:

方案一:用Bitbucket REST API + Shell脚本

这种方法无需额外安装复杂工具,只要有curl和git就能搞定,步骤如下:

  1. 生成Bitbucket个人访问令牌(PAT)
    登录Bitbucket后,进入个人设置→应用密码,创建一个带repository:read权限的令牌,保存好备用。

  2. 创建并执行Shell脚本
    新建一个clone-all-repos.sh文件,填入以下内容,替换其中的YOUR_PAT为你刚生成的令牌:

    #!/bin/bash
    WORKSPACE="shcdemo"
    PROJECT_KEY="EAR"
    TOKEN="YOUR_PAT"
    CLONE_DIR="./ear-project-repos"
    
    # 创建存放仓库的目录
    mkdir -p $CLONE_DIR
    cd $CLONE_DIR
    
    # 调用Bitbucket API获取项目下所有仓库的HTTPS克隆地址
    curl -s -u "你的Bitbucket用户名:$TOKEN" "https://api.bitbucket.org/2.0/repositories/$WORKSPACE?q=project.key=\"$PROJECT_KEY\"" | \
    jq -r '.values[] | .links.clone[] | select(.name == "https") | .href' | \
    while read repo_url; do
        git clone $repo_url
    done
    

    注意:需要提前安装jq(JSON解析工具),Mac可通过brew install jq安装,Linux用apt install jq或yum install jq。

  3. 运行脚本
    给脚本加执行权限:chmod +x clone-all-repos.sh,然后运行:./clone-all-repos.sh,脚本会自动创建目录并克隆所有仓库。

方案二:用Bitbucket官方CLI工具(bb)

Bitbucket官方命令行工具bb操作更简洁:

  1. 安装bb工具
    根据系统选择安装方式:Mac用brew install bb,Linux可从官方发布页下载二进制文件,Windows用Chocolatey或直接下载。

  2. 登录Bitbucket
    运行bb auth login,按提示输入账号和PAT完成登录。

  3. 批量克隆仓库
    切换到目标存放目录,运行以下命令:

    bb repo list --workspace shcdemo --project EAR --format json | \
    jq -r '.[].links.clone.https.href' | \
    xargs -I {} git clone {}
    

    若你的bb版本支持,也可以用更简便的命令:

    bb repo clone --workspace shcdemo --project EAR --all
    

    不同版本的bb命令可能略有差异,若--all参数无效,就用前面的管道命令。

注意事项

  • 确保PAT有足够权限,至少需要仓库读取权限。
  • 仓库数量较多时,克隆过程耗时较长,不要中断脚本。
  • 若克隆失败,检查网络连接或PAT权限是否正确。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 04:27:36