最简单的解决git上传大文件失败方法
2021-10-28 本文已影响0人
WilburLi
曾因不小心将内存溢出的分析文件commit,就自然会引起git提交失败,毕竟只有100M,很容易就超出,后在网上查到过方法,但实在是过于麻烦,步骤过于繁琐,今天再次遇到同样问题,找到了更简单的办法记录一下
首先通过 rev-list 来找到仓库记录中的大文件:
git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -5 | awk '{print$1}')"
然后通过 filter-branch 来重写这些大文件涉及到的所有提交(重写历史记录):
git filter-branch -f --prune-empty --index-filter 'git rm -rf --cached --ignore-unmatch your-file-name' --tag-name-filter cat -- --all
然后就可以直接push了