我的.git文件已增长到229Mb,我想知道缩小尺寸的最佳方法是什么。我知道git gc并且已经使用了相当数量的git gc。我不完全确定git是如何工作的,但我知道那里有我不再需要的打包信息。就像,我知道我不再需要保存前五个分支。有没有办法彻底删除真正的旧分支或提交或类似的东西?
答案 0 :(得分:14)
如果您希望保持(可达)提交历史记录不变,则过期,重新包装,修剪和垃圾回收:
git reflog expire --expire=0 --all
git repack -ad
git prune
git gc
这应该是您可以获得repo 和保留提交历史记录的最小尺寸。
如果没有,也就是说,你想要或者不介意重新开始以当前的回购状态作为初始提交,那么Peter Tillemans的做法就会做到。
答案 1 :(得分:2)
你在“Reduce git repository size”中有一些技巧,但我在其中也提到了git gc
alone can increase the size of the repo!
因此,如果没有人主动从你的回购中提取,那么可能需要一些过滤分支(也在that question中引用)。
Git repo大小迅速增加的一个因素是太多二进制文件的版本化。它是Git limits之一,所以请尝试:
答案 2 :(得分:1)
答案 3 :(得分:1)
我会使用git gc