Github 修正上传时“this exceeds GitHub’s file size limit of 100 MB”错误

本文介绍了一种解决Github上传超过100MB大文件的方法,通过使用git filter-branch等命令来移除缓存中的大文件,并提供了具体的命令示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Github只允许上传最大100MB的文件,如果超过,则会被server reject

则需:


git filter-branch --force --index-filter "git rm --cached --ignore-unmatch Project1/Project1.1\ Sample\ Project/output.txt" --prune-empty --tag-name-filter cat -- --all

git commit --amend -CHEAD

git push origin master


注意要在.git文件夹目录下执行以上命令


http://www.walbrix.com/jp/blog/2013-10-github-large-files.html

### 解决GitHub提交文件大小超出限制的问题 当尝试向GitHub推送代码,如果某个文件超过100MB的限制,则会触发`file size limit exceeded`错误[^4]。以下是具体的解决方案: #### 方法一:移除大文件并清理缓存 即使删除了超大的文件,Git可能仍会在其历史记录中保留该文件副本。因此需要通过以下步骤彻底清除这些文件的历史记录。 ```bash # 安装BFG Repo Cleaner工具 brew install bfg # 使用BFG工具清理仓库中的大文件 bfg --strip-blobs-bigger-than 100M your-repo.git # 或者手动方式: git filter-branch --force --index-filter \ 'git rm --cached --ignore-unmatch PATH_TO_FILE' \ --prune-empty --tag-name-filter cat -- --all # 强制更新远程仓库 git push origin --force --all ``` 上述方法能够有效移除指定的大文件,并同步更改至远程仓库。 #### 方法二:调整单次提交的内容 对于新创建的提交,可以通过忽略特定路径下的大型文件实现规避此问题。 ```bash echo "CHATSERVICE.ipch" >> .gitignore git rm --cached CHATSERVICE.ipch git add . git commit -m "Remove large file from repository" git push origin main --force ``` 这里的关键在于`.gitignore`配置以及强制覆盖已有数据的操作[^5]。 #### 方法三:利用LFS管理大文件 另一种推荐的方式是采用Git LFS(Large File Storage),专门用于存储和版本控制较大的二进制文件。 ```bash # 安装Git LFS插件 git lfs install # 跟踪特定类型的大型文件 git lfs track "*.ipch" # 提交跟踪规则到版本库 git add .gitattributes git add CHATSERVICE.ipch git commit -m "Add CHATSERVICE.ipch with Git LFS" git push origin main ``` 这种方法不仅解决了当前问题,还为未来可能出现的大文件提供了解决方案。 ```python print("以上三种方法均可解决GitHub提交因文件过大而失败的情况") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值