当我要还原版本到commit2的时候运行命令:
git reset --hard 6f3dd7a2
然后运行git log命令,显示如下:
这里commit3的提交被撤销了。
如果是开发过程中,误操作后会丢弃掉指定commit以后的所有提交信息,如何挽救呢?
这里需要使用git reflog命令来处理这类情况了,它会记录每次HEAD移动的历史。
所以可以找到刚才reset之前的那条记录的commit,所以运行命令如下:
git reset --hard 4e866d5
再次运行git log命令,查看提交日志,显示如下:
commit3的提交记录还原了。
感觉这个命令真是好用,方便..... 这里都是用的--hard模式,比较暴力,除非是生产环境BUG太严重或者说是指定commit之后的所有提交全部弃用,否则不推荐使用此模式。