Git清理瘦身

1
git gc --prune=now

找出最大的三个文件

1
git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -3

查看大文件

1
git rev-list --objects --all | grep c43a8da

移除对大文件的引用

1
git filter-branch --force --index-filter "git rm --cached --ignore-unmatch 'data/bigfile'"  --prune-empty --tag-name-filter cat -- --all

repack

1
git for-each-ref --format='delete %(refname)' refs/original | git update-ref --stdin
2
git reflog expire --expire=now --all
3
git gc --prune=now

查看pack的空间使用情况

1
git count-objects -v


参考资料: