You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法推送至Git仓库,请求协助解析推送被拒错误信息

解决Git推送被拒绝(fetch first)的问题

嘿,别慌,这个Git推送报错其实挺常见的,我来一步步帮你搞定它!

错误原因

你看到的! [rejected] master -> master (fetch first)错误,核心原因是远程仓库的master分支有你本地没有的更新——可能是你的队友刚推送了新代码,也可能是你在另一台电脑上提交过变更,总之远程分支的内容比你本地的要新。Git为了防止你直接覆盖这些远程的有效更新,就拒绝了你的推送请求。

解决步骤

第一步:拉取并合并远程变更

先把远程的最新内容拉到本地,和你的代码合并:

git pull origin master

执行这个命令后,Git会自动尝试合并远程和本地的代码:

  • 如果没有代码冲突,合并会自动完成;
  • 如果出现冲突,Git会提示你哪些文件有冲突,你需要打开这些文件,手动处理冲突(找到标记<<<<<<<、=======、>>>>>>>的部分,保留需要的内容并删除冲突标记)。

解决完冲突后,提交合并结果:

git add .
git commit -m "合并远程分支并解决冲突"

第二步:重新推送代码

合并完成后,再重新推送你的代码到远程:

git push origin master

这时候应该就能顺利推送成功了!

特殊情况:强制推送(谨慎使用!)

如果你百分百确定远程那些“本地没有的内容”是无效的(比如误提交的测试代码),可以用强制推送覆盖远程分支,但这个操作风险极高,可能会丢失其他人的提交记录,一定要确认后再执行:

git push origin master --force

(更安全的替代是git push origin master --force-with-lease,它会检查远程分支在你拉取后有没有新提交,能避免误覆盖最新的有效代码)

内容的提问来源于stack exchange,提问作者Sunil Tripathi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:48:37