github上传大文件(多种解决方案)

之前一直用vscode的上传项目方法,这个方便之处在于不用打开git终端输入各种命令,不过麻烦的是我一直无法拉取github上的远程仓库提交,每次只能更新已有的仓库并且上传的文件还不能太大,应该是不能超过100MB,而且直接在github界面上传文件也不能超过25MB,这是github为了保证网页的响应速度。

于是看了B站的一个up主采用git方法来上传文件,整个流程还是挺丝滑的,不过有一些需要注意的点。

下面演示整个过程。

下载git(不会可以搜搜教程,不难),首先在github上创建一个新仓库,如果你直接在这里Add file,添加了一些文件或者添加readme文件,那么后面有一些点需要注意。

右键我们要上传的文件,点击Open Git Bash here 。

依次输入以下两条命令表示上传该文件中的所有的文件。(暂时可忽略可能出现的一些警告信息)

这时在我们要上传的文件中会出现一个git文件夹(如果没有,可能是被隐藏了,点击查看,显示隐藏的项目)。

点击刚刚出现的git文件夹,再点击里面的config文件,用vscode或者记事本打开,添加user和后面的两条信息,对应的是自己github的注册邮箱和github名字。

复制代码
[user]
email=2059356794@qq.com
name=ziyizhou

再输入下面这条指令," "中是自己取的本次提交的名字。

这时会加载我们文件夹中的所有文件。

再输入下面这条命令,origin后面的网址是自己刚刚创建的github网址 。

网址从自己的github项目复制 。

输入下面这条指令推送(push)项目到github就完成啦,注意现在的github默认分支是main,之前的默认是master,可能你看别的教程使用的是master,这是老版本。

现在的github默认分支是main,如下图。

注意,前面提到,如果你在创建项目时直接Add file,添加了一些文件或者添加readme文件,那么直接push会失败,会报以下的错误,这个错误说明远程仓库的main分支有本地没有的更新(比如其他人推送过代码,或你在 GitHub 网页端直接修改过文件),需要先同步远程的更新到本地,再推送你的修改。

执行以下这条命令,这条指令的意思是把远程库中的更新合并到本地库中,-rebase的作用是取消掉本地库中刚刚的commit,并把他们接到更新后的版本库之中。

用图形象的解释下错误情况的发生和解决(摘抄自其他博客)

git pull --rebase origin main意为先取消commit记录,并且把它们临时 保存为补丁(patch)(这些补丁放到".git/rebase"目录中),之后同步远程库到本地,最后合并补丁到本地库之中。

接下来就可以把本地库push到远程库当中了。

再重新执行推送操作就可以、成功上传啦。

刷新我们的github项目,就可以看到文件已经被上传了。

可能遇到的问题:

当遇到HTTP缓存不够导致的Git错误时。

修改git配置,增大http.postBuffer值,例如设置为524288000字节,以允许更大的文件传输。输入以下指令。

复制代码
$ git config --global http.postBuffer 524288000

如果还是上传失败,比如我在上传一个较大项目时总是上传失败,显示 Connection was absorted,连接被终止。

使用SSH密钥上传

点击Settings

点击新建一个密钥

给密钥起一个名字

win+R,输入cmd打开终端,输入以下指令获取密钥

复制代码
ssh-keygen -t rsa -b 4096 -C "注册github的邮箱"

打开生成密钥的pub文件,

复制密钥到github上

点击添加密钥,验证密码后,打开我们要上传的文件的git终端,和前面的操作一致。

在origin后面,复制的github网址就不再是HTTP网址,而是SSH网址。

类似的操作,改变下网址类型。

显示推送成功。

如果你在操作过程过程中遇到了任何问题,欢迎留言 !

相关推荐
xiezhr29 分钟前
开源两天 9.5 万 Star!DeepSeek Harness 到底是个啥?小白安装到实战一篇讲透
ai·github·ai agent·deepseek·deepseek harness
暮云星影37 分钟前
git仓库分支管理
git·gitee·github·gitea
段一凡-华北理工大学12 小时前
AI推动工业智能化转型~系列文章24:钢铁工业 AI 全景图:从原料场到轧机的场景地图
人工智能·深度学习·模型生命周期·钢铁工业·ai全景
wangruofeng14 小时前
20822 star 的开源录屏软件弃 Tauri 换 Electron:表层是换壳,里子是 46 个 Rust 模块
github·音视频开发
chen_zn9514 小时前
《VLA 系列》Human-to-Robot Transfer | 人类视频共训练 | 跨本体涌现迁移 | 论文解析
人工智能·深度学习·transformer·具身智能·vla
CCC:CarCrazeCurator14 小时前
DeepSeek‑Harness Windows 本地快速上手
深度学习·数据挖掘
还不秃顶的计科生15 小时前
具身智能论文学习8:Octo: An Open-Source Generalist Robot Policy
人工智能·深度学习·学习·机器学习·语言模型·vla·vlm
CAD老兵16 小时前
一行代码集成 DWG/DXF 图纸查看:测量批注,数据不出站
前端·javascript·github
lucas_AI16 小时前
1.2B 小模型赢过 235B 大模型:NaviDC-OCR 把文档解析卷明白了
人工智能·深度学习·算法
杀生丸学AI16 小时前
【稀疏重建】StructSplat:基于非校准稀疏视图的可泛化3DGS
深度学习·3d·音视频·transformer·三维重建·空间智能