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

如何回退到GitHub的最近一次提交?

回退Git提交的具体操作方案(适配你的场景)

看了你的git log输出,当前本地master和远程origin/master都指向最新提交0d74db9(备注“重构导航栏”)。我猜你应该是想撤销这次提交,回到上一次e5e7f70(“小范围设计调整及Bug修复”)的状态吧?下面分两种常见情况给你一步步操作:

情况1:仅调整本地分支,还没推送到远程

(虽然你的log显示已经推了,但还是提一下这种高频场景)

  • 要是你想保留这次提交的修改(变成本地未暂存的代码,方便后续调整):
    git reset --soft e5e7f7002f76f47e394c097f770e325c7058002d
    
  • 要是你想彻底丢掉这次提交的所有修改,直接回到上一次的干净状态:
    git reset --hard e5e7f7002f76f47e394c097f770e325c7058002d
    

情况2:已经推送到GitHub远程分支,需要同步回退

因为你的代码已经推到远程了,这时候要让远程也回退到之前的提交,得用强制推送,步骤如下:

  1. 先把本地分支回退到目标提交:
    git reset --hard e5e7f7002f76f47e394c097f770e325c7058002d
    

    敲黑板:--hard会直接抹掉当前提交的所有修改,如果你还想留着这些代码,可以换成--soft,但之后得重新提交再推,不过这种方式不建议在多人协作的项目里用,容易给队友添麻烦。

  2. 强制推送到远程的master分支:
    git push origin master --force
    

    注意:如果是团队一起开发的项目,强制推送会覆盖远程的提交历史,一定要提前和队友说清楚,别搞丢别人的代码!

另外,如果你只是想让本地代码和远程最新的提交完全一致(比如本地有乱七八糟的未提交修改,想一键回到远程状态),可以跑这几条命令:

git checkout master
git fetch origin
git reset --hard origin/master

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:12:33