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

如何恢复被误操作影响的Git分支,回退非预期的提交变更?

Git分支改动恢复操作方案

问题根因

你在hello-feature分支执行git add后没有提交改动就直接新建并切换到hello-feature-copy分支,未提交的改动不属于任何分支,会随工作区同步到新切换的分支,后续你将所有改动提交到了hello-feature-copy分支,因此原hello-feature分支无法看到对应改动。

恢复步骤

根据你的需求选择对应操作即可:

需求1:hello-feature和hello-feature-copy两个分支都保留本次改动

  • 切换到原开发分支:git checkout hello-feature
  • 合并拷贝分支的提交内容:git merge hello-feature-copy

需求2:仅hello-feature保留改动,hello-feature-copy不需要本次提交记录

  • 切换到拷贝分支:git checkout hello-feature-copy
  • 撤销最近一次提交,改动保留在工作区:git reset HEAD~1
  • 暂存所有改动并储藏:git add . && git stash
  • 切回原开发分支:git checkout hello-feature
  • 恢复储藏的改动到当前分支:git stash pop
  • 后续可重新新建hello-feature-copy分支提交要共享给同事的内容即可

兜底方案

如果上述操作无法找到对应改动,可执行git reflog查看本地所有git操作记录,找到对应提交的哈希值后,执行git cherry-pick <提交哈希值>即可把对应提交迁移到当前分支。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 20:27:03