【问题记录】解决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
相关推荐
逛逛GitHub1 小时前
推荐 4 个 yyds 的 GitHub 开源项目
github
车骑3 小时前
一个支持国外技术聚合翻译自动化的开源脚本
大模型·github
草梅友仁5 小时前
草梅 Auth 1.7.0 发布 Demo 模式 | 2025 年第 37 周草梅周报
开源·node.js·github
python_1365 小时前
git常见冲突场景及解决办法
git
大飞记Python5 小时前
当GitHub不再纯粹:Python自动化测试的未来是AI还是危机?
python·github
杨杨杨大侠7 小时前
Atlas Mapper 教程系列 (5/10):集合映射与嵌套对象处理
java·开源·github
杨杨杨大侠7 小时前
Atlas Mapper 教程系列 (6/10):Spring Boot 集成与自动配置
java·开源·github
洛小豆9 小时前
Git 打标签完全指南:从本地创建到远端推送
前端·git·github
王道长服务器 | 亚马逊云9 小时前
一个迁移案例:从传统 IDC 到 AWS 的真实对比
java·spring boot·git·云计算·github·dubbo·aws
嘟嘟可在哪里。10 小时前
IntelliJ IDEA git凭据帮助程序
java·git·intellij-idea