1. git add -A
2. git commit -m "xxx"
3. git gc
4. 查找大文件,"tail -20"中的20表示条数
git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -20 | awk '{print$1}')"
5. 删除大文件,”xxx.framework“是上一步中列出的大文件路径,遍历所有的commit,删除指定的文件,重写历史commit
git filter-branch --force --index-filter 'git rm -rf --cached --ignore-unmatch xxx.framework' --prune-empty --tag-name-filter cat -- --all
6. 强行远程推送
git push origin --force --all
7. 清除缓存
rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now
// 查看项目仓库大小
git count-objects -v