我試着尋找一個關於減少倉庫大小的好教程,但是沒有找到。我如何減少我的回購大小...它大約是10 MB,但Heroku只允許50 MB,並且我沒有接近完成開發我的應用程序的地方。減少Git倉庫大小
我已經將通常的嫌疑人(日誌,供應商,文檔等)添加到.gitignore中。儘管我最近只添加了.gitignore。
有什麼建議嗎?
我試着尋找一個關於減少倉庫大小的好教程,但是沒有找到。我如何減少我的回購大小...它大約是10 MB,但Heroku只允許50 MB,並且我沒有接近完成開發我的應用程序的地方。減少Git倉庫大小
我已經將通常的嫌疑人(日誌,供應商,文檔等)添加到.gitignore中。儘管我最近只添加了.gitignore。
有什麼建議嗎?
git gc --aggressive
是強制剪枝過程發生的一種方法(當然是:git gc --aggressive --prune=now
)。您也有other commands清理回購。不要忘了,有時候git gc
單獨可以increase the size of the repo!
它也可以在filter-branch
之後用於標記一些要從歷史記錄中刪除的目錄(具有進一步的空間增益);見here。但這意味着沒有人從你的公共回購中撤出。 filter-branch
can keep backup refs in .git/refs/original
,這樣目錄也可以清理。
最後,如提到in this comment和this question;清潔引用日誌可以幫助:
git reflog expire --all --expire=now
git gc --prune=now --aggressive
一個更加完整的,而且可能是危險的,解決方法是to remove unused objects from a git repository
在另一種情況下,請參閱http://stackoverflow.com/questions/1029969/why-is-my-git-repository-so-big – VonC 2010-01-22 11:40:01
注意自我:不要忘記遠程分支:http:// stackoverflow。 com/questions/11255802/delete-remove-binary-file-from-git-repository-is-still-large – VonC 2012-06-29 06:26:33
注意自我:不要忘記遠程標籤 – saiyancoder 2014-10-06 06:27:09
我剛剛做了,它把它降低到2.2 MB ......非常感謝!雖然這似乎並沒有減少回購大小Heroku .. hmm – 2010-01-22 11:16:18
使用--force推它。它會覆蓋內容,即使沒有改變(沒有新的提交等) – 2010-01-22 11:21:59
@MarcinGil - 下面,VonC聲明您需要訪問服務器來清理遠程服務器(如果我正確解析它)。 – jww 2016-06-16 11:34:10