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

忘记拉取GitHub远端新提交就生成本地commit时如何推送修改

Git提交历史分叉时的推送操作指南

你遇到的报错本质是本地分支和远端分支提交历史出现分叉,Git为了避免覆盖远端内容触发的推送拦截,可根据需求选择以下两种解决方案:

方案1:合并提交(操作门槛低,无风险)

  • 拉取远端最新提交并自动和本地提交合并:
    git pull origin main
    (如果你的主分支名是master就替换成master,下同)
  • 如果控制台提示存在文件冲突,打开冲突文件,删除<<<<<<< HEAD、=======、>>>>>>> 远端提交哈希这类冲突标记,编辑保留最终需要的代码内容后,执行:
    git add 冲突文件路径
    git commit -m "解决远端与本地提交冲突"
  • 完成后直接推送即可:
    git push origin main

方案2:变基整合(保持提交历史线性整洁,适合个人项目)

  • 拉取远端最新提交,将本地未推送的所有提交移动到远端最新提交之后:
    git pull --rebase origin main
  • 出现冲突的话按方案1的方式解决冲突,之后执行:
    git add 冲突文件路径
    git rebase --continue
    如果中途想终止变基恢复到操作前状态,可执行git rebase --abort
  • 变基完成后执行推送:
    git push origin main

注意:两种方案都不会丢失本地或远端的提交内容,多人协作的公共分支更推荐使用合并方案,避免修改提交历史影响其他协作者。

内容的提问来源于stack exchange,提问作者Ryan-X

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 15:15:04