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
本文总阅读量 次