git传输超过100MB的文件

github会拒绝上传超过100MB的文件,所以需要使用git LFS

  1. 安装Git LFS

    添加 Git LFS 的官方 APT 仓库

    curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash

    安装 Git LFS

    sudo apt-get install git-lfs

    初始化Git LFS

    git lfs install

  2. 告诉 Git LFS 要管理哪些文件

使用 git lfs track 命令来"注册"您想要用 LFS 管理的文件类型。这个命令会创建或修改一个名为 .gitattributes 的文件,来记录这些规则。

复制代码
# 告诉 Git LFS,所有 .rknn 文件都由你来管理
git lfs track "*.rknn"

# 告诉 Git LFS,所有 .onnx 文件也由你来管理
git lfs track "*.onnx"

执行后,您会看到类似 Tracking "*.rknn" 的提示。现在,您的项目里应该有一个 .gitattributes 文件,内容如下:

  1. 修改 .gitignore 文件

之前上传的时候使用了ignore忽略了这些大文件的上传,现在我们要移除掉

  1. 添加、提交和推送

    添加 .gitattributes 文件,让 LFS 规则生效

    git add .gitattributes

    添加 .gitignore 的修改

    git add .gitignore

    现在,添加您的大文件

    您可以一个个加,也可以用通配符

    git add OCSORT_test/.rknn
    git add OCSORT_test/
    .onnx

    别忘了您其他的代码文件

    git add .

    检查一下状态,确保所有文件都已暂存

    git status

推送以后报错:

刚才执行的 git push origin test,成功地把一个"包裹清单"(您的 Git 提交记录和 LFS 指针文件)发给了 GitHub。这个清单非常小(1.31 KiB),所以发送得很快。

GitHub 服务器收到清单后,核对了一下,然后回复您:"嘿,你的清单我收到了,上面写着有4个大包裹(LFS objects)。但是我查看了我的仓库,并没有收到这4个大包裹的实体。你得先把它们寄给我才行。"

这个错误的意思是:Git 的提交记录已经推送过去了,但是 LFS 管理的大文件实体还没有被上传

  1. 单独推送LFS文件

    git lfs push --all origin test

  • git lfs push: 告诉 Git 我们要执行一个 LFS 的推送操作。
  • --all: 一个强大的选项,它会检查您本地所有分支中,有哪些 LFS 文件是远程 LFS 服务器上没有的,然后把它们全部上传
  • origin test: 指定您要推送到的远程仓库和分支。
相关推荐
noravinsc6 小时前
关于Git Flow
git
蜜獾云6 小时前
在Git中配置用户名和密码
git
scx_link8 小时前
通过git bash在本地创建分支,并推送到远程仓库中
开发语言·git·bash
南大白10 小时前
IntelliJ IDEA 运行时的 JVM 本地内存溢出崩溃
git
码农小旋风10 小时前
Claude Code 基础用法大全:对话、分析、修改、测试、Git 和工作流
人工智能·git·chatgpt·claude
南大白11 小时前
Git 撤回提交完整方案
git
像风一样的男人@11 小时前
python --实现代理服务器
git·ui
sbjdhjd12 小时前
从零搭建企业级 CI/CD(下):Jenkins+GitLab+Harbor 全链路实战指南
git·servlet·ci/cd·云原生·云计算·gitlab·jenkins
码云数智-大飞12 小时前
Go Channel 详解:并发通信的正确姿势
前端·数据库·git
OsDepK21 小时前
OSMDE手机AI编程,一键Git
git·ai编程