我有一个项目,价值约12MB的代码和资产在它。我一直在用Git跟踪它,刚刚注意到我的.git
文件夹现在刚刚超过1.83GB。它由几个小文件组成,然后只有一个包文件,约占1.82GB的文件夹。
我已经运行了git gc --aggressive
和git gc --prune
。大小是一样的。我试过了:
git reflog expire --expire=now --all
git repack -ad # Remove dangling objects from packfiles
git prune # Remove dangling loose objects
但它仍然是相同的大小。我甚至克隆了它(一次在本地使用强制重新打包,另一次从Git),但每个版本仍然是1.83GB。这正常吗?有没有办法减少它的大小,或者我只是开始一个新的repo,复制代码,并接受我过去提交的代码将会消失?
好的,这些评论是了解问题可能的根本原因的一个很好的开始。我不太理解git filter-branch
命令,所以我对使用它有点谨慎。
我遇到了这个工具:https://rtyley.github.io/bfg-repo-cleaner/
它创造了奇迹。我的repo现在小于10MB