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

Git HEAD指向两个本地分支,如何仅回退其中一个分支一个提交?

解决方法

当前你的仓库状态是branch_A和branch_B指向同一个提交76ee9315,要让该提交仅属于branch_A,同时将branch_B回退到242bf88d,正确操作如下:

  • 直接强制修改branch_B的指针,无需切换到该分支:
    git branch -f branch_B 242bf88d
    

执行完后,branch_A会继续指向76ee9315,而branch_B会回退到合并提交242bf88d,完全不会影响branch_A的提交记录。

为什么之前的操作出问题?

你之前切换到branch_B执行硬重置时,本质上是移动了branch_B的指针,但如果之后误操作了branch_A(比如切换回去后也执行了重置),才会导致提交丢失。而用git branch -f直接修改分支指针的方式,不需要切换分支,能精准控制单个分支的指向,避免误操作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 21:15:53