Github超过100M的大文件上传

简介: 通常我们commit完成之后,往Github上push的时候,单个文件大小不会超过100M,所以基本不会遇到这种情况。但是,总会遇到的,当单个文件超过100M的时候,push的时候会出现下面这样的Error:remote: Resolving deltas: 100% (472/472), done.

通常我们commit完成之后,往Github上push的时候,单个文件大小不会超过100M,所以基本不会遇到这种情况。
但是,总会遇到的,当单个文件超过100M的时候,push的时候会出现下面这样的Error:

remote: Resolving deltas: 100% (472/472), done.
remote: error: GH001: Large files detected.
You may want to try Git Large File Storage - https://git-lfs.github.com.

或者:

Total 3007 (delta 664), reused 0 (delta 0)
remote: error: GH001: Large files detected.
remote: error: Trace: 7b7de6b9372ee392e0f3961b05ea6f33
remote: error: See http://git.io/iEPt8g for more information.
remote: error: File XXX/XXX/XXX is 234 MB; this exceeds GitHub‘s file size limit of 100.00 MB
remote: error: File XXX/XXX/XXX is 234 MB; this exceeds GitHub‘s file size limit of 100.00 MB。

上面错误的原因很好理解就是GitHub不允许直接上传大文件(超过100M)的文件到远程仓库,若要想继续提交可以尝试使用大文件支持库:https://git-lfs.github.com
LFS使用的简单步骤:

  • 安装git - lfs到本机
    这里没有什么难度,根据官网安装就好。

之后就是提交大文件的顺序,下面是官网的顺序:

  1. 安装Git命令行扩展。只需要设置一次Git LFS。
    在项目目录下,执行以下命令:

git lfs install

  1. 选择您希望Git LFS管理的文件类型(或直接编辑.gitattributes)。您可以随时配置其他文件扩展名。这一步成功后会生成一个gitattributes文件

git lfs track “* .a” --这里的 “ *.a "就是你要上传的大文件的路径

  1. 添加并commit gitattributes文件

git add .gitattributes

  1. 然后再添加大文件到本地缓存区

git add demo.a
git commit -m "提交.a大文件"
git push

以上,按照上述的方法,第一次上传大文件基本还是会报错,而且百思不得其解~
尼玛,新手入坑总是这个尿性。。

如下图:


img_f2b62d037c924ce215fcb86521a2bb12.png
2200042-a1a69b95caa64404.png

出现上述问题,先reset 到你刚才commit的前一个commit,(意思就是撤销刚才的commit,回到起点再来一次。)

第一、二步同上,第三步的时候,先将 .gitattributes文件,单独commit,然后push,完成之后,在进行第四部(第四部add 之后 执行git lfs ls-files应该能看见东西了)。
到这里应该就没问题了。

目录
相关文章
|
算法 数据处理 调度
【C++ 优先队列】了解 C++优先队列中操作符重载的实现
【C++ 优先队列】了解 C++优先队列中操作符重载的实现
206 0
|
Linux
Debian 11 / Deepin 20安装新版中文输入法fcitx5 / 搜狗拼音
Debian 11 / Deepin 20安装新版中文输入法fcitx5 / 搜狗拼音
7050 0
|
运维 监控 Cloud Native
|
存储 开发工具 git
使用 git push 上传超过100MB文件报错 remote: error: this exceeds GitHub‘s file size limit of 100.00 MB
Git 大文件存储(LFS)用 Git 中的文本指针替换音频示例、视频、数据集和图形等大文件,同时将文件内容存储在 GitHub.com 或 GitHub Enterprise 等远程服务器上。
1044 0
|
存储 开发工具 git
GIT LFS是什么
【4月更文挑战第21天】GIT LFS是什么
2881 1
|
运维 数据可视化 搜索推荐
什么是零代码?零代码与低代码有什么联系与区别?
这篇文章阐述了零代码和低代码开发的概念、优势、区别,以及它们如何服务于不同用户群体,并通过APaaS平台促进快速开发和部署应用程序。
|
存储 编解码 容器
FFmpeg avformat_open_input() 函数返回错误protocol not found解决方法(实测有效!附简单FFMPEG的编解码流程)
我个人出现这个错误的时候是在打开文件时报的错误,开始以为我需要加上资源文件,那样QT确实能检测到文件的存在,但是在Debug中他是检测不到这个文件的。
1202 1
|
XML 监控 安全
OWASP-TOP 10 漏洞概述
OWASP-TOP 10 漏洞是指由开放式Web应用程序安全项目(OWASP)发布的,关于Web应用程序最可能、最常见、最危险的十大安全漏洞的列表。
1000 0
|
缓存 Linux iOS开发
【C/C++ 集成内存调试、内存泄漏检测和性能分析的工具 Valgrind 】Linux 下 Valgrind 工具的全面使用指南
【C/C++ 集成内存调试、内存泄漏检测和性能分析的工具 Valgrind 】Linux 下 Valgrind 工具的全面使用指南
1400 1
|
存储 算法 数据安全/隐私保护
C++ 位运算 std::bitset类的使用介绍
C++ 位运算 std::bitset类的使用介绍
472 0