如何从GitHub私有仓库下载单个文件或指定文件夹
私有GitHub仓库单文件夹下载解决方案
以下两种方案均适配私有仓库场景,无需克隆完整项目:
方案一:Git 稀疏检出(无需额外安装工具)
操作步骤:
- 新建空目录并初始化本地Git仓库
mkdir temp_git && cd temp_git git init
- 关联私有远程仓库
# 方式1:使用HTTP协议,替换尖括号内容为你自己的信息 git remote add origin https://<GitHub用户名>:<Personal Access Token>@github.com/<仓库所属用户名>/<仓库名>.git # 方式2:如果本地已配置SSH密钥,可直接使用SSH地址,无需携带Token git remote add origin git@github.com:<仓库所属用户名>/<仓库名>.git
Personal Access Token(PAT)可在GitHub账户的「开发者设置」中生成,仅需要勾选repo权限即可用于私有仓库鉴权
- 开启稀疏检出功能
git config core.sparseCheckout true
- 配置需要拉取的目标路径
echo "NavigationHelp/*" >> .git/info/sparse-checkout
- 拉取对应分支的内容
# 替换为你的仓库实际默认分支名,通常为main或master git pull origin main
操作完成后当前目录下只会出现你指定的NavigationHelp文件夹,其余项目内容不会被拉取,可自行删除.git目录单独保存目标文件。
方案二:GitHub CLI 工具(操作更简洁)
如果已经安装GitHub官方CLI并完成登录鉴权,直接执行以下命令即可:
gh repo clone <仓库所属用户名>/<仓库名> -- --sparse --filter=blob:none cd <仓库名> git sparse-checkout set NavigationHelp
该方案由官方工具自动处理私有仓库鉴权,无需手动配置Token。
补充:若仅需要下载单个文件,可直接在GitHub网页端打开目标文件,点击右上角「Raw」按钮,将获取到的Raw链接前面加上
<你的PAT>@即可直接通过浏览器或curl下载,示例格式:https://<PAT>@raw.githubusercontent.com/<用户名>/<仓库名>/<分支>/NavigationHelp/build.gradle
内容的提问来源于stack exchange,提问作者Kalyan Mishra
相关产品推荐
相关产品推荐

