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

使用git clone配合git sparse-checkout拉取大型仓库

git clone --no-checkout(注意是两个短横线,不是四个)的作用是:

克隆远程仓库,但不自动检出(checkout)工作目录中的文件。


详细解释

正常执行 git clone <repo> 时,Git 会做两件事:

  1. 把整个仓库(包括所有历史提交、分支、标签等)克隆到本地 .git 目录。
  2. 自动检出远程仓库默认分支(如 mainmaster)的最新提交,把文件写入工作目录。

而加上 --no-checkout(或简写为 -n)后:

  • 第一步照常进行:.git 目录完整克隆。
  • 第二步跳过:工作目录保持空的(或只有 .git 文件夹),HEAD 指向默认分支,但不检出任何文件

使用场景

  1. 节省时间和磁盘 I/O
    如果你只想获取仓库历史,或者后续会手动设置稀疏检出(sparse-checkout),可以避免先检出全部文件再删除。

  2. 配合稀疏检出(Sparse Checkout)
    典型用法:

    git clone --no-checkout <repo-url>
    cd <repo>
    git sparse-checkout init --cone ##已弃用命令,其行为类似于没有指定路径的 set 命令。将来可能会被移除
    git sparse-checkout set dir1 dir2
    

    这样只检出指定目录,避免先下载整个工作树。

  3. 自动化脚本中控制检出时机
    比如先克隆,再根据条件决定检出哪个分支或提交。


示例

# 克隆但不检出文件
git clone --no-checkout https://github.com/user/repo.git
cd repo# 此时 ls 看不到源码文件(只有 .git)
ls -a  # 只显示 . 和 .git# 手动检出
git checkout main   # 或 git switch main

注意事项

  • --no-checkout 不影响 .git 目录的完整性,所有提交历史都已下载。
  • 克隆后 HEAD 仍然指向远程默认分支,只是工作区未填充。
  • 可通过 git checkoutgit switch 手动触发检出。

小结

命令 是否检出工作目录
git clone <repo> ✅ 是
git clone --no-checkout <repo> ❌ 否

适用于需要延迟检出精细控制工作区内容的高级用法。

http://www.jsqmd.com/news/31082/

相关文章:

  • AT_indeednow_2015_qualb_4 高橋くんと数列 题解报告
  • TOON 协议与 AIDotNet.Toon 实践指南
  • 杂题选做-4
  • 2025 年 11 月江阴商标注册服务商权威推荐榜:专业代理机构实力解析与高效申请指南
  • 2025 年 11 月江阴商标注册服务商权威推荐榜:专业代理机构与高效申请流程口碑之选
  • 详细介绍:安全框架 SpringSecurity 入门(超详细,IDEA2024)
  • 洛谷 P1780 染色的立方体 题解报告
  • P11.常见的transforms(一)
  • 2025年11月上海装修公司榜单:松江千州装饰真实口碑深度解析
  • 2025年11月上海装修公司排行榜:从设计到交付的完整评价指南
  • 2025年11月上海装修公司排名榜:十强对比看谁更值
  • Web开发的坑
  • 5.吴恩达机器学习—神经网络的基础使用
  • 前端三剑客——javascript内置对象与其方法
  • 2025 年 11 月 PCD 铣刀厂家推荐排行榜,金刚石铣刀,聚晶金刚石铣刀,超硬刀具,高精度 PCD 铣刀公司推荐
  • 2025 年 11 月平面铣刀厂家推荐排行榜,钨钢平面铣刀,合金平面铣刀,数控平面铣刀,高精度平面铣刀公司推荐
  • 2025 年 11 月侧铣刀厂家推荐排行榜,钨钢侧铣刀,不锈钢侧铣刀,铝合金侧铣刀,高硬度侧铣刀公司推荐
  • 2025年11月适合初中生的学习机品牌排行:市场热销榜全维度评价
  • 《算法闯关指南:优选算法--滑动窗口》--15.串联所有单词的子串,16.最小覆盖子串 - 实践
  • 2025年11月适合初中生的学习机品牌评测:五款主流机型横向对比
  • 2025年11月适合初中生的学习机品牌推荐:权威榜单对比与口碑评测
  • FT232RL FT232R国产替代芯片GP232RNL GP232RL高稳定性USB转串口桥接芯片
  • Oracle OCP认证考试题目详解082系列第1题 - 实践
  • H3C AC+AP本地转发二层组网
  • jmeter中java.net.ConnectException: Connection refused: connect - 实践
  • 疯了还是天才?(上):一门基于Vim,号称“AI无法取代”的新语言
  • 2025年11月教育资源好的学习机品牌推荐:权威榜单对比评测
  • 小记
  • 2025年11月教育资源好的学习机品牌推荐:口碑榜五强深度评测
  • 2025年11月教育资源好的学习机品牌推荐:榜单对比五强教育资源含金量