Git执行git reset --hard回滚以后,撤销这一步回滚操作

当执行`git reset --hard`导致代码回滚后,可以通过查看`git log`或`git reflog`找到回滚前的commitID。然后使用`git branch [new_branch] [commitID]`创建新分支保存原始状态,或者直接用`git reset --hard [commitID]`强制回到之前的状态。请注意确保丢失的commit信息未被gc清理。
摘要由CSDN通过智能技术生成

问:git reset --hard 回滚之后,怎么撤销这一步回滚操作

答:可以撤销

步骤:
前提条件:丢失的分支或commit信息还没有被git gc清除(gc对于那些无用的object一般会保留很长时间)

  1. 执行git log -g 或者 git reflog show
  2. 找到执行reset --hard之前的commit对应的commitid(可以通过日期和时间来辨别)
  3. 通过git branch recover_branch commitid来建立新分支并撤销了回滚,之前的代码、各种提交记录等信息就已经存在于分支中(此步骤可选)
  4. 直接使用命令git reset --hard commitid可强制回滚到之前的版本

【参考】www.segmentfault.com/q/1010000002984945 Kevin 的回答

  • 7
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值