github上文件过大无法推送问题

GitHub 对文件大小有限制,超过 100 MB 的文件无法直接推送到仓库中。

解决思路:

  • 使用 Git Large File Storage (Git LFS) 来管理大文件
  • 不上传对应的大文件

使用Git LFS:

1. 安装 Git LFS

首先,你需要安装 Git LFS。可以按照以下步骤操作:
Windows:

下载并安装 Git LFS。

安装完成后,在终端中执行以下命令来初始化 Git LFS:

bash 复制代码
git lfs install

2. 跟踪大文件

接下来,告诉 Git LFS 跟踪 .pth 文件类型:

bash 复制代码
git lfs track "*.pth"

这会创建一个 .gitattributes 文件来标记需要使用 Git LFS 存储的文件类型。
3. 添加和提交文件

将 .gitattributes 文件添加到 Git 并提交:

bash 复制代码
git add .gitattributes
git add AlexNet/best_model.pth
git commit -m "Track .pth files with Git LFS" 

4. 推送到远程仓库

最后,再次推送代码到 GitHub:

bash 复制代码
git push -u origin main

通过这些步骤,你的 .pth 文件将被 Git LFS 管理,并且可以成功推送到 GitHub 仓库。如果你之前尝试上传的文件已经被推送过一次,且由于文件过大被拒绝,可以执行以下命令清理历史记录:

bash 复制代码
git lfs push --all origin main

这样就能够确保大文件通过 Git LFS 正常上传到 GitHub。


不上传对应的大文件:

1. 从 Git 历史中移除大文件

你可以使用 git rm 命令从当前版本和历史记录中删除该文件:

bash 复制代码
git rm --cached AlexNet/best_model.pth

这将从 Git 索引中移除该文件,但保留文件在本地磁盘上的副本。
2. 提交更改

然后,你需要提交该更改:

bash 复制代码
git commit -m "Remove best_model.pth from Git"

3. 推送更改

现在,你可以推送这些更改到 GitHub:

bash 复制代码
git push origin main

4. 忽略该文件

为了防止将来再次不小心将该文件推送到 GitHub,你可以将该文件添加到 .gitignore 中。这样,Git 就会忽略这个文件。打开或创建 .gitignore 文件,并添加以下内容:

bash 复制代码
AlexNet/best_model.pth

然后提交 .gitignore 文件:

bash 复制代码
git add .gitignore
git commit -m "Add best_model.pth to .gitignore"
git push origin main

这样,你就成功地从 GitHub 移除了这个大文件,并且以后也不会再推送它了

相关推荐
第一程序员16 分钟前
Python函数式编程:非科班转码者的入门指南
python·github
Hhaizhr16 分钟前
放弃OpenClaw,开始用Hermes
github
ShawnLiaoking1 小时前
Github 克隆 PyCharm,vscode
ide·pycharm·github
想七想八不如114082 小时前
【GitHub开源】一款基于 Python 的人脸识别 C/S 系统:YOLOv5 + PyQt5 + 批量入库
yolo·开源·github
CoderJia程序员甲2 小时前
GitHub 热榜项目 - 日榜(2026-04-10)
人工智能·ai·大模型·github·ai教程
辣椒酱.2 小时前
github入门与实战
github
捧月华如2 小时前
React vs Vue vs Angular:三大前端框架深度对比
python·github
研究点啥好呢11 小时前
Github热门项目推荐 | 创建你的像素风格!
c++·python·node.js·github·开源软件
无限进步_12 小时前
【C++】电话号码的字母组合:从有限处理到通用解法
开发语言·c++·ide·windows·git·github·visual studio
MicrosoftReactor13 小时前
技术速递|使用 Copilot SDK 构建 AI 驱动的 GitHub Issue 分类系统
人工智能·github·copilot