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

Git:如何仅在本地仓库排除无需目录,避免拉取冗余内容?

实现Git仓库的部分目录克隆(仅拉取src目录)

针对你的需求,有两种主流方法可以实现只拉取指定目录,下面分别说明操作步骤和适用场景:

一、稀疏检出(Sparse Checkout)

这种方式会克隆仓库的完整提交历史,但仅在本地检出你需要的目录,适合需要保留完整历史但不想占用多余空间的场景:

  1. 初始化本地仓库并进入目录
git init project
cd project
  1. 添加远程仓库地址
git remote add origin <你的Git仓库URL>
  1. 开启稀疏检出功能
git config core.sparseCheckout true
  1. 配置需要拉取的目录(写入稀疏检出规则文件)
echo "src/" >> .git/info/sparse-checkout
  1. 拉取目标分支的代码
git pull origin <你的分支名,比如main>

二、部分克隆(Partial Clone)

这种方式会直接跳过与指定目录无关的提交和文件对象,只克隆必要的内容,空间占用更小,适合完全不需要mobile/目录及相关历史的场景:

  1. 直接执行带过滤参数的克隆命令
git clone --filter=blob:none --sparse <你的Git仓库URL> project
  • --filter=blob:none:告诉Git不要克隆任何文件内容,只拉取提交结构
  • --sparse:开启稀疏模式
  1. 进入克隆后的仓库
cd project
  1. 设置需要包含的目录
git sparse-checkout set src/

补充说明

  • 如果之后需要拉取mobile/目录,稀疏检出可以执行:
    echo "mobile/" >> .git/info/sparse-checkout
    git pull origin <分支名>
    
    部分克隆则执行:
    git sparse-checkout add mobile/
    
  • 确保你的Git版本在2.25.0以上(git --version查看),部分克隆和新版稀疏检出需要这个版本支持。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 13:12:40