如何为15.5GB机器学习项目配置.gitignore并解决上传断开问题
解决大体积机器学习项目GitHub上传断开的问题
一、先彻底清理仓库冗余文件(修复.gitignore无效问题)
- 机器学习项目的15.5GB体积大概率来自数据集、预训练模型权重、缓存文件、临时输出,先把这些加入.gitignore,确保规则覆盖到位:
# Python缓存文件 __pycache__/ *.pyc *.pyo # 机器学习大文件 *.h5 *.pth *.pt *.ckpt data/ datasets/ models/ outputs/ *.npy *.npz - 如果之前已经提交过这些大文件,必须先从Git缓存中移除(否则.gitignore不会生效),在PyCharm终端执行:
git rm -r --cached . git add . git commit -m "Clean up ignored files from cache"
二、用Git LFS管理必须保留的大文件
GitHub普通仓库单文件超过100MB会触发上传限制,必须用Git LFS(大文件存储)处理:
- 安装Git LFS后,在终端执行初始化命令:
git lfs install - 追踪需要上传的大文件类型(比如你的模型是.pth格式):
git lfs track "*.pth" git lfs track "*.h5" - 提交自动生成的
.gitattributes文件:git add .gitattributes git commit -m "Track large files with Git LFS"
三、调整Git配置避免上传断开
大文件上传容易因超时断开,修改Git缓存和超时参数:
git config --global http.postBuffer 524288000 git config --global http.lowSpeedLimit 0 git config --global http.lowSpeedTime 999999
以上设置会增大上传缓存、取消低速超时限制,降低断开概率。
四、用GitHub Desktop分步提交上传
不要一次性推送所有文件,拆分步骤减少负载:
- 打开GitHub Desktop,关联本地项目与远程GitHub仓库。
- 先提交推送小文件(代码、requirements.txt、.gitignore等),点击「Commit to main」后再点「Push origin」。
- 分批选择Git LFS追踪的大文件提交推送,每次只选1-2个大文件,避免单次上传压力过大。
五、备选方案:精简仓库内容
如果清理后体积仍过大,建议:
- 只上传核心代码、配置文件(requirements.txt)、训练脚本,数据集和超大模型权重用外接硬盘单独备份——GitHub的核心定位是代码托管,并非超大规模数据存储。
内容的提问来源于stack exchange,提问作者Krlus
相关产品推荐
相关产品推荐

