解决git commit 大文件推送失败

//查找大文件

git verify-pack -v .git/objects/pack/pack-*.idx | sort -k 3 -g | tail -5

//根据上面查找到的hash值,筛选文件名

git rev-list --objects --all | grep 28c65edc2b880f02602970a5d13f6ffc9a59cb66

//删除

git filter-branch --force --index-filter 'git rm -rf --cached --ignore-unmatch 2阶段/4sql/StuSqlMgr/TCPServer/lib/' --prune-empty --tag-name-filter cat -- --all

//真正的删除和清理

rm -rf .git/refs/original/

git reflog expire --expire=now --all

git fsck --full --unreachable

git repack -A -d

git gc --aggressive --prune=now

//强制推送到远程

git push --force origin master

上一篇:java中的ArrayList 使得集合中的对象不重复


下一篇:Zookeeper 源码(三)Zookeeper 客户端源码