【问题记录】解决Git上传文件到GitHub时收到 “GH001: Large files detected” 错误信息!

环境

问题情况

  • 在命令行中使用git上传pdf文件到GitHub服务器时,提示了如下警告信息:
  • 原因是 GitHub 有一个文件大小限制,通常为 100 MB。
    • 如果尝试上传大于此限制的文件,GitHub 将拒绝接受这个文件。
    • 如果上传大于50MB,小于100MB,GitHub则会提示警告信息,但不影响上传。

解决方法

  • 怎么解决呢?,命令行中也提示我们了,它说让我们去尝试使用 "Git大文件存储",也就是推荐我们去使用 Git LFS。
  • Git Large File Storage(LFS)是 Git 的一个扩展,允许将大文件存储在单独的存储库中,并将其链接到主存储库。这样可以避免大文件占用主存储库的空间。如果使用 Git LFS,我们就可以将大文件上传到 LFS 存储库,然后在主存储库中链接到它们。

安装流程

  • 打开 Git Large File Storage (LFS) 网页,下载该插件。

  • 下载并安装Git命令行扩展,然后开始按以下步骤进行配置了(就是官网的 Getting Started 教程)。

  • 运行以下命令为你的用户帐户设置Git LFS(每个用户帐户只需运行一次即可):
    *

    复制代码
    git lfs install
  • 在每个想要使用Git LFS的Git存储库中(就是切换到要上传大文件所在的Git存储库目录下),选择希望Git LFS管理的文件类型(或直接编辑.gitattributes)。也可以随时配置其它文件扩展名。(我这里是pdf文件)
    *

    复制代码
    git lfs track "*.pdf"
  • 然后确保 .gitattributes 文件被跟踪:
    *

    复制代码
    git add .gitattributes
  • 注意,定义Git LFS应该跟踪的文件类型本身不会将任何先前存在的文件转换为Git LFS,例如其它分支上的文件或先前提交历史中的文件。要做到这一点,可以使用 git lfs migrate(1) 命令,该命令提供了一系列适合各种潜在用例的选项。

  • 最后执行以下三步,只需提交并推送到GitHub(如果当前的分支名为main):

    • git add fileName.pdf
    • git commit -m "Add a large file"
    • git push origin main
相关推荐
Unity粉末状在校生6 小时前
Git解决fatal: Could not read from remote repository.的问题
git
少年攻城狮6 小时前
Obsidian系列---【如何使用obsidian同步到git?】
git
Hommy888 小时前
【开源剪映小助手】Docker 部署
docker·容器·开源·github·aigc
do better myself8 小时前
网站源码如何部署和加入GIT仓库的
git
爱学英语的程序员11 小时前
Git 提交 LF will be replaced by CRLF the next time Git touches it 报错
git
qq_3391911412 小时前
服务器git pull每次都要输入密码,linux 设置git登录,linux设置git只输入一次账户密码
git
CoderJia程序员甲17 小时前
GitHub 热榜项目 - 日榜(2026-04-09)
人工智能·ai·大模型·github·ai教程
魔卡少女117 小时前
Nginx配置代码化自动部署詹金斯/Github方案
前端·nginx·github
李白的天不白17 小时前
ai编程工具
github
一颗小行星!18 小时前
快速理解 Git submodule
git