提交一個項目,push的時候,報錯:git
warning: Large files detected. remote: error: File TaodangpuAuction/TaodangpuAuction/AuctionClasses/Discover/TXLiteAVSDK/TXLiteAVSDK_UGC.framework/TXLiteAVSDK_UGC is 120.68 MB; this exceeds file size limit of 100.0 MB remote: error: hook declined to update refs/heads/dev To https://gitee.com/doubleyao1116/JianHuo.git ! [remote rejected] dev -> dev (hook declined) error: failed to push some refs to 'https://gitee.com/doubleyao1116/JianHuo.git' bogon:每天鑑定dev mac$
緣由是有一個文件超過了git服務器對文件大小的限制。服務器
刪掉本地文件,再推,仍是報錯。加忽略文件,再推也是報錯。回滾,再推,仍是一樣的錯誤。this
最後發現是這個大文件已經保存到了log中,所以不管怎麼刪改,這個文件沒有從log中剔除就總會報出相同的錯誤。因此要在日誌中把這個文件刪除便可。spa
命令以下:日誌
git filter-branch -f --index-filter "git rm -rf --cached --ignore-unmatch xxx.rar" -- --all
上面的xxx.rar就是上面上傳的大文件code
git filter-branch -f --index-filter "git rm -rf --cached --ignore-unmatch TaodangpuAuction/TaodangpuAuction/AuctionClasses/Discover/TXLiteAVSDK/TXLiteAVSDK_UGC.framework/TXLiteAVSDK_UGC" -- --all
上面的過程會很長,不要擔憂,看見掃描的文件一個一個的變少,那就是離成功更近了。blog
最後再git push就行了rem