跳转至

git仓库瘦身方法

有没有发现你的git仓库突然变大了,克隆的时候需要很长时间,什么原因呢?

有没有发现你的代码明明不大,但就是克隆需要很久,为什么呢?

日常开发的时候,不小心上传了一些二进制文件,删除二进制文件后,仓库依然很大,为什么呢?

细心的同学会发现,.git目录往往比我们的代码仓库还大,有时候大得多。

因为当我们删除大文件后,git仍会有一份缓存在.git目录下,以方便我们回退,所有大文件仍然存在。

针对这种情况,git官方推荐我们使用 git-filter-repo,这是一个第三方库,我们只需要使用其中的 git-filter-repo.py ,这里可直接下载。

使用要求

  • git >= 2.22.0 at a minimum; some features require git >= 2.24.0 or later
  • python3 >= 3.5

使用方式

# 先分析仓库,速度很快,分析结果保存在.git/filter-repo/analysis中
python git-filter-repo --analyze
# 查看分析结果,确定要删除的记录,用下面的命令删除
python git-filter-repo --force --invert-paths --path-match filename/directory

本文总阅读量
回到页面顶部