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

同一组织下,如何通过GITHUB_TOKEN让私有RepoA访问RepoB的发布制品并克隆?

同一组织内私有仓库用GITHUB_TOKEN跨Repo操作方案

1. 用GITHUB_TOKEN下载RepoB的Release制品

前置设置

  • 组织层面配置访问权限:
    1. 进入组织的Settings → Actions → General
    2. 在「Repository access」区域,选择「All repositories」,或手动添加RepoA、RepoB到允许访问的仓库列表
  • RepoA的Workflow任务权限配置:
    在对应job下添加permissions字段,授予contents: read权限(访问Release制品需要读取仓库内容的权限)

实现命令

方式一:curl直接请求

# 替换<组织名>、<tag-name>、<asset-name>为实际值
curl -L -H "Authorization: token $GITHUB_TOKEN" \
  https://github.com/<组织名>/RepoB/releases/download/<tag-name>/<asset-name> \
  -o ./<asset-name>

方式二:GitHub CLI(gh)简化操作

# Ubuntu runner默认预装gh,直接执行即可
gh release download <tag-name> --repo <组织名>/RepoB --dir ./目标存储目录

注:gh会自动读取环境变量中的GITHUB_TOKEN完成认证


2. 用GITHUB_TOKEN克隆RepoB

前置设置

与上述要求一致:组织层面允许RepoA访问RepoB,且Workflow任务已配置contents: read权限

实现命令

通过HTTPS协议克隆,将GITHUB_TOKEN作为访问令牌嵌入URL:

git clone https://x-access-token:$GITHUB_TOKEN@github.com/<组织名>/RepoB.git

注:该方式不会在Git配置或历史中留下令牌,安全性有保障

若需克隆指定分支:

git clone -b <目标分支名> https://x-access-token:$GITHUB_TOKEN@github.com/<组织名>/RepoB.git

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 14:53:22