跳到主要内容

查看当前 Git 仓库的大小

想确认什么

想确认什么推荐命令说明
.git 目录本身占多大du -sh .git看 Git 历史、对象、索引和引用的磁盘占用
整个仓库占多大du -sh .包括工作区文件和 .git
Git 对象库的详细统计git count-objects -vH看未打包对象、pack 文件和对象库体积

推荐命令

查看 .git 目录大小

du -sh .git

查看整个仓库大小

du -sh .

查看 Git 对象库统计

git count-objects -vH

输出怎么看

git count-objects -vH 的几个关键字段:

  • count:当前未打包对象的数量。
  • size:这些未打包对象占用的空间。
  • in-pack:已经打进 pack 文件的对象数量。
  • packs:pack 文件数量。
  • size-pack:pack 文件总大小,通常最能反映历史对象库体积。

这条命令只统计 Git 对象库,不等于整个工作区占用;du -sh . 才是“整个仓库在磁盘上有多大”。

常用组合

du -sh .git
du -sh .git/objects
git count-objects -vH
  • 想排查历史对象是否膨胀,优先看 .gitsize-pack
  • 想排查依赖目录、数据集、构建产物是否占空间,优先看整个仓库 du -sh .
  • 如果仓库使用 Git LFS,还可以单独看:
du -sh .git/lfs/objects

注意事项

  • du 是 Linux 常用命令,这一页默认运行环境是 Linux。
  • git count-objects -vH 看不到工作区的大文件,也看不到被 .gitignore 忽略但实际存在的构建产物。
  • 如果仓库空间异常变大,先区分是工作区变大,还是 .git 历史变大,再决定是否需要清理构建目录、迁移大文件或整理历史。