我尝试发布一个超过100MB的文件
然后我查了一下并意识到GitHub有一个限制。
虽然看起来我可以更改使用更大的文件Git lfs - "this exceeds GitHub's file size limit of 100.00 MB",这不是我的目标。相反,我编辑了文件,它现在大约80MB
问题是,当我尝试git pull
(或使用网络应用程序同步)时,我仍然会被告知这个文件太大了......
我只能猜测git已经处理了不再存在的内容,但我不知道如何将其从尝试上传此文件中删除。
这是我的努力,也显示了失败(第一行)。这是从Git Shell
复制的remote: error: File Photoshop/Originals/homePage.psd is 119.97 MB; this exceeds GitHub's file size limit of 100.00 MB
To https://github.com/company/site.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://github.com/company/site.git'
G:\websites\GitHub\site\Website\site[master ↑3 +0 ~1 -0 !]> git rm --cached Photoshop/Originals/homePage.psd
fatal: pathspec 'Photoshop/Originals/homePage.psd' did not match any files
G:\websites\GitHub\site\Website\site [master ↑3 +0 ~1 -0 !]> git rm Photoshop/Originals/homePage.psd
fatal: pathspec 'Photoshop/Originals/homePage.psd' did not match any files
G:\websites\GitHub\site\Website\site [master ↑3 +0 ~1 -0 !]>
答案 0 :(得分:1)
尝试并使用BFG Repo-Cleaner,但请确保您当前工作树的进度没有变化(先添加并提交)
cd /path/to/your/local/repo
java -jar bfg.jar --strip-blobs-bigger-than 100M some-big-repo.git
git reflog expire --expire=now --all && git gc --prune=now --aggressive
然后推送新的历史记录(强制推送覆盖:确保您是唯一一个处理该回购的人,或者确实告知您的重写)
git push --force