git仓库太大只下载单个文件或文件夹

有没有这样的苦恼:仓库太大,只想下载其中某些文件(夹)?

一招解决:bash down_folder_from_git.sh

运行前,先修改开头三个变量

原理: 稀疏检出 让工作树仅包含自定义的文件

bash 复制代码
#!/usr/bin/bash
addr='https://github.com/facebook/infer'  # 仓库
branch='main'                             # 分支
obj='Makefile FILES.md scripts examples'  # 要下载文件夹(夹)
# 1.获取该仓库元信息
git clone -n ${addr}.git || exit 1
cd ${addr##*/}
# 2.设置git,并指定要下载哪些文件(夹)
git config core.sparseCheckout true
git sparse-checkout set /${obj// / \/}
# 3. 下载文件夹
git checkout $branch
rm -rf .git


:)开心,有么有

相关推荐
挖掘狂人10 小时前
Git 从 0 到 1:用一个小项目走完 add / commit / reset / merge / rebase / push
git·后端·github
codigger11 小时前
Git 三区域模型:把 add、commit、reset、merge 一次讲透
git·github·编程·编程语言
水饺编程11 小时前
第1章:开发环境搭建,在 Windows 中安装 Git
linux·c语言·汇编·git·ubuntu
idanzk11 小时前
Git 推送 GitHub 报 SSL_READ /src refspec main 不匹配 完整踩坑记录
git·github·ssl
星恒随风13 小时前
Linux开发工具详解(二):Git版本控制、GitHub协作与GDB调试实战
linux·笔记·git·学习·github
寺中人1 天前
Xshell 完全入门指南:从安装到实战,远程连接+文件传输+会话管理全拆解
git·ssh·github·php·远程连接·xshell·运维工具
酬谢神明则必安1 天前
git学习记录01
linux·git·学习
lingchen19061 天前
版本控制 Git源代码项目管理
git
虫无涯1 天前
Coverity 如何结合 GJB8114-2013使用?
git·单元测试·嵌入式测试·coverity·静态扫描
喵本喵叁肆2 天前
Git 深度解读:从对象模型到分支指针,把版本控制的内核讲透
git