git reset --hard 回滚以后 以后怎么再回去?
PHP中文网
PHP中文网 2017-05-02 09:20:55
[Git讨论组]

git reset --hard 回滚到之前的版本以后,怎么撤销这一步回滚操作?

PHP中文网
PHP中文网

认证0级讲师

全部回复(2)
漂亮男人

可以通过reflog来进行恢复,前提是丢失的分支或commit信息没有被git gc清除

一般情况下,gc对那些无用的object会保留很长时间后才清除的

可以使用git reflog show或git log -g命令来看到所有的操作日志

恢复的过程很简单:

  1. 通过git log -g命令来找到需要恢复的信息对应的commitid,可以通过提交的时间和日期来辨别,找到执行reset --hard之前的那个commit对应的commitid

  2. 通过git branch recover_branch commitid 来建立一个新的分支

这样,就把到commitid为止的代码、各种提交记录等信息都恢复到了recover_branch分支上了。

天蓬老师
git stash save
git reflog 
git checkout
git branch 

stash你现在的脏内容。用reflog找到你要回去的commit,checkout过去然后建个分支跟原来得分支merge。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号