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

如何删除GitHub仓库中的合并提交(merge commit)?

解决Git远程仓库中多余合并提交的方法

你之前执行git reset --hard HEAD~1后本地提交变化但GitHub没更新,是因为这个操作只修改了本地仓库的提交历史,并没有同步到远程仓库。要删除GitHub上的这个合并提交,按以下步骤操作:

  • 先在本地锁定目标提交:你的合并提交70cc4bd的父提交是960b06a和709f964,如果想回到合并前本地master的状态,直接执行:

    git reset --hard 960b06a
    

    执行前可以先运行git log --oneline确认提交链,确保选对了要回退的节点。

  • 强制同步到远程仓库:因为你修改了本地提交历史,普通推送会被拒绝,必须用强制推送覆盖远程历史:

    git push origin master --force-with-lease
    

    用--force-with-lease比直接--force更安全,它会检查远程是否有你本地未同步的新提交,避免误覆盖其他人的修改。

注意事项

强制推送会改写远程仓库的提交历史,如果有其他协作者在这个仓库工作,一定要提前通知他们,让他们执行git pull --rebase重新同步仓库,否则会出现提交冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 08:47:13