由于git仓库中存放了较大的文件,之后即使在gitignore中添加,也不会导致.git文件夹变小。
参考[1](#1) [2](#2)
通过
du -d 1 -h
查看文件大小
使用
bash
git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -5 | awk '{print$1}')"
查看git缓存中较大的文件。
安装 git-filter-repo
pip install git-filter-repo
使用
git filter-repo --invert-paths --path 文件 --force
删除相关提交内容
如果还有不需要的内容,重复以上过程
之后可以看到
du -d 1 -h
.git下没有太多内容了
之后使用git命令处理垃圾
bash
rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now
结束
注意
可能处理完找不到远程仓库,需要
git remote add 远程地址
一下