git的pack文件太大


.git/objects/pack 文件過大

可能是由於開發過程中上傳過大文件,雖然現已刪除,但仍然保存着git記錄中。

解決辦法:

一、刪除倉庫上的項目,重新提交代碼。

二、徹底清除歷史記錄

1.識別出最大的三個文件

git verify-pack -v .git/objects/pack/pack-8eaeb...9e.idx | sort -k 3 -n | tail -3

296169a146c50dbc100a5d0ee5be87a45cd7cbb3 blob 50296832 49474116 291684796

aae2c1bf6109f2729502349722b4c3402626d755 blob 77762481 77330392 78759794

35047899fd3b0dd637b0da2086e7a70fe27b1ccb blob 100534272 100014418 191670176
2.查詢大文件的文件名

git rev-list --objects --all | grep 35047899fd3b0dd637b0da2086e7a70fe27b1ccb

35047899fd3b0dd637b0da2086e7a70fe27b1ccb /wabapi/bulid/master-0.0.1.jar
3.將該文件從歷史記錄的所有 tree 中移除

git filter-branch --index-filter 'git rm --cached --ignore-unmatch /wabapi/bulid/master-0.0.1.jar'

4.執行如下語句

rm -rf .git/refs/original/

git reflog expire --expire=now --all

git fsck --full --unreachable

git repack -A -d

git gc --aggressive --prune=now

git push --force

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM