当前位置: 首页 > news >正文

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

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

一招解决:

./down_folder_from_git.sh https://github.com/facebook/infer main 'Makefile FILES.md scripts examples'
./down_folder_from_git.sh https://github.com/Tencent/TscanCode master samples

运行前,先修改开头三个变量
原理: 稀疏检出 让工作树仅包含自定义的文件

#!/usr/bin/bash[[ "$#" -ne 3 ]] && echo "$0 仓库 分支 文件(夹)" && exit
addr=$1      #'https://github.com/facebook/infer'  # 仓库
branch=$2    #'main'                               # 分支
obj="$3"     #'Makefile FILES.md scripts examples' # 要下载文件夹(夹)
# 1.获取该仓库元信息
git clone -n --recursive ${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

在这里插入图片描述
在这里插入图片描述

:)开心,有么有

http://www.lryc.cn/news/330339.html

相关文章:

  • OpenHarmony实战:RK3568 开发板镜像烧录指南
  • Asp.net Core 中一键注入接口
  • 怎么让ChatGPT批量写作原创文章
  • 【SqlServer】Alwayson收缩日志
  • 视觉里程计之对极几何
  • 数据可视化高级技术(Echarts)
  • 设计模式——行为型——责任链模式Chain Of Responsibility
  • 设计模式之工厂方法模式精讲
  • JS实现省市区三级联动(json假数据)
  • Fastjson配置消息转换器(时间格式问题)
  • 安卓Android 架构模式及UI布局设计
  • 基于Spring Boot的在线学习系统的设计与实现
  • C++中重载和重写的区别
  • 二叉树 - 栈 - 计数 - leetcode 331. 验证二叉树的前序序列化 | 中等难度
  • Training language models to follow instructions with human feedback
  • Netty核心原理剖析与RPC实践11-15
  • 3.5网安学习第三阶段第五周回顾(个人学习记录使用)
  • kali常用命令功能简介记录
  • 低噪声、轨至轨运算放大器芯片—— D721、D722、D724,适合用于音频领域
  • 【统计】什么事 R 方
  • Maplesoft Maple 2024(数学科学计算)mac/win
  • 实战 | YOLOv8自定义数据集训练实现手势识别 (标注+训练+预测 保姆级教程--含数据集)
  • 从零学算法2810
  • Vue——案例01(查询用户)
  • 【数据结构】线性表
  • 983. 最低票价 C++
  • 紫光展锐P7885核心板详细参数介绍_5G安卓智能模块开发方案
  • Keil MDK 5.37 及之后版本 安装 AC5(ARMCC) 编译器详细步骤
  • 速盾:cdn配置ssl
  • 代码随想录算法训练营 Day41 动态规划3