GitHub 代码上传与故障排除实战指南

第一阶段:标准上传流程

如果你是在一个全新的本地目录下开始,请按此顺序操作:

1.初始化与提交

javascript 复制代码
git init
git add .
git commit -m "initial commit"

2.关联远程仓库

javascript 复制代码
git remote add origin https://github.com/*

3.推送代码

javascript 复制代码
# 强制将本地 master 推送到远程 main 并建立跟踪
git push -u origin master:master -f

第二阶段:常见问题与解决方案

问题 1:远程仓库包含本地没有的文件 (Rejected)

报错信息: ! rejected master -> main (fetch first)

原因: GitHub 仓库在创建时自带了 README 或 License,导致历史记录不一致。

解决方案(二选一):

合并法: git pull origin main --allow-unrelated-histories

覆盖法(慎用): git push -u origin master:main -f

问题 2:单个文件超过 100MB 限制

报错信息: remote: error: File server/data.db is 905.44 MB; this exceeds GitHub's file size limit

原因: GitHub 禁止上传超过 100MB 的单个文件。

解决方案:彻底抹除历史记录

1.使用滤镜工具删除历史中的大文件:

javascript 复制代码
git filter-branch --force --index-filter \
"git rm --cached --ignore-unmatch **/**" \
--prune-empty --tag-name-filter cat -- --all

2.设置 .gitignore 防止再次误加:

javascript 复制代码
echo "server/data.db" >> .gitignore

3.再次强制推送:

javascript 复制代码
git push -u origin master:master-f
相关推荐
M78佐菲6 小时前
Linux学习笔记:TCP协议
linux·笔记·学习·tcp/ip·算法
噜~噜~噜~6 小时前
操作系统笔记-2.3.5.1.1生产者-消费者问题
笔记·操作系统
Flynt8 小时前
browser-use团队新作:让编程Agent帮你剪视频,核心设计思路有点意思
开源·agent·claude
分布式存储与RustFS8 小时前
RustFS 生命周期与分层:让冷数据自动搬家、热数据自己回家
云原生·开源·对象存储·分布式存储·s3·rustfs·性能基准
冬奇Lab9 小时前
Code Agent 解剖(17):AgentTeams——消息怎么在 agent 之间传递?
人工智能·开源
冬奇Lab9 小时前
一天一个开源项目(第205篇):PenguinHarness - 让 AI 来构建 AI
人工智能·开源·资讯
Huathy-雨落江南,浮生若梦10 小时前
Caddy 学习笔记 - 反向代理与 IP 封禁
笔记·学习·tcp/ip
峰向AI10 小时前
GenOffice:开源 Office 套件,字节级保留、本地转换、BYOK模式
github
谢白羽11 小时前
SGLang的AWQ量化笔记
笔记·python·sglang
pnoker12 小时前
IoT DC3 参与指南:文档、Demo、CLI 与贡献路径
物联网·开源·开源社区·agpl·贡献指南