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

Git/GitHub新手推送代码至仓库时遇[rejected]错误求助

解决Git推送失败(rejected, fetch first)的方法

这个报错的核心是远程仓库的main分支包含本地没有的提交——可能是其他协作者推送了代码,或是你在GitHub网页端直接修改了仓库内容,导致本地代码和远程代码的提交历史不一致,Git拒绝了你的推送请求。

方案1:合并远程变更(推荐,适用于多人协作场景)

  • 先拉取远程最新代码到本地并自动合并:
    git pull origin main
    
  • 如果合并时出现冲突,Git会在冲突文件里标记差异(比如<<<<<<<、=======、>>>>>>>),手动修改这些文件解决冲突后,执行:
    git add .
    git commit -m "解决合并冲突"
    
  • 最后重新推送你的代码:
    git push origin main
    

方案2:强制推送(仅在确认远程变更无需保留时使用)

如果你确定远程的更新是无效的、或者你完全想覆盖远程内容,可以用强制推送,但多人协作场景下绝对不要随意使用,会覆盖远程仓库的提交历史:

git push origin main --force

更安全的替代命令(仅在本地提交历史是远程的超集时生效,避免误覆盖他人提交):

git push origin main --force-with-lease

内容的提问来源于stack exchange,提问作者Jayasimha Reddy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 13:04:59