這個問題在這里已經有了答案: 如何從 Git 存盤庫的提交歷史記錄中洗掉/洗掉大檔案? (21 個回答) 14 小時前關閉。
將專案推送到 Github 時收到以下錯誤訊息。“檔案 CoreMLObjectRecognition/coreMLModels/YOLOv3.mlmodel 為 236.88 MB;這超出了 GitHub 的檔案大小限制 100.00 MB”
然后我意識到檔案太大了,無論如何我不再需要該檔案,所以我做了以下操作。
- 從專案中洗掉檔案
- 將目錄(CoreMLObjectRecognition/coreMLModels/,“YOLOv3.mlmodel”在目錄中,但已被洗掉。)添加到.gitignore,因為該目錄將包含大檔案。
- “git rm -r --cached 。” 和“混帳添加。” 反映 .gitignore
- “git ls-files”檢查哪些檔案在 git 的控制之下。“YOLOv3.mlmodel”不在串列中。
- “git commit”,但得到訊息說:“在分支 main 你的分支領先于 'origin/main' 12 個提交。(使用“git push”發布你的本地提交)沒有提交,作業樹干凈”
- “git push”將更改推送到遠程存盤庫。
然后我仍然得到同樣的錯誤:“檔案 CoreMLObjectRecognition/coreMLModels/YOLOv3.mlmodel 是 236.88 MB;這超出了 GitHub 的檔案大小限制 100.00 MB”
我做錯什么了?有人能幫我嗎?
uj5u.com熱心網友回復:
以防萬一在過去的提交中已經跟蹤了游覽檔案,請嘗試對其進行過濾。
- 安裝
git filter-repo(基于python) - 洗掉歷史記錄中的任何大檔案:
git filter-repo --strip-blobs-bigger-than 2M例如。(基于內容的過濾) - 強制推送(
git push --mirror:確保通知該存盤庫上的任何協作者)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/479107.html
