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 移除了这个大文件,并且以后也不会再推送它了

相关推荐
小华同学ai40 分钟前
吊打中文合成!这款开源语音神器效果炸裂,逼真到离谱!
前端·后端·github
sensen_kiss1 小时前
Git和GitHub基础教学
git·github
uhakadotcom1 小时前
Python高并发实战:阿里云函数计算 + 异步编程高效处理万人请求
后端·面试·github
uhakadotcom1 小时前
Apache Flink:实时数据处理的强大工具
后端·面试·github
AI云极1 小时前
Coze、Dify、FastGPT、MaxKB全面对比,选对平台让开发效率翻倍!
github
uhakadotcom1 小时前
了解Nginx替代品:选择合适的Web服务器
后端·面试·github
大鹏dapeng2 小时前
Gone V2 Provider 机制介绍
后端·go·github
cong_2 小时前
为了摸鱼我开发了一个摸鱼网站
前端·后端·github
uhakadotcom2 小时前
Spring Boot实现高并发的实践指南
后端·面试·github
uhakadotcom3 小时前
利用Supabase构建高并发应用的7大技巧
后端·面试·github