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

如何撤销推送到错误远程GitHub仓库的提交?

撤销错误推送到远程仓库的提交方法

根据错误仓库的使用场景,分两种方式处理:

情况1:错误仓库仅你使用,无其他协作者拉取过提交

这种情况可以直接将远程仓库回退到错误推送前的状态:

  1. 通过git log或远程仓库的提交历史,找到错误推送前的目标提交哈希值
  2. 执行安全的强制推送,将远程分支回退到该版本:
    git push origin <你的分支名> --force-with-lease
    
    注:--force-with-lease比普通--force更安全,会验证远程仓库是否存在你未同步的新提交,避免误覆盖无关内容。

情况2:错误仓库有其他协作者,已有人拉取错误提交

为避免破坏协作者的本地仓库,不要直接强制回退,而是通过生成撤销提交抵消错误修改:

  1. 针对错误推送的提交生成撤销记录:
    git revert <错误提交的哈希值>
    
    若存在多个错误提交,可一次性指定多个哈希:
    git revert <提交哈希1> <提交哈希2>
    
  2. 将撤销提交推送到错误远程仓库:
    git push origin <你的分支名>
    
    此方法会保留错误提交的历史,但通过新提交抵消其修改,不会影响协作者的工作流程。

后续操作

处理完错误推送后,务必修正本地仓库的远程链接,指向正确的仓库B:

git remote set-url origin <仓库B的远程地址>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 01:50:05