前言
在学习Git的时候,可能有很多人会搞不清楚 git log 和 git reflog的区别。接下来,是我个人对于 git log 和 git reflog 的区别的理解。
一、版本回退
这个是我事先写好的一个例子
此时,我们可能需要进行版本回退,此时要用到的命令如下:
$ git reset --hard HEAD^
执行完该命令后,会回到上一次提交的版本。版本回退后如下:
二、git log 与 git reflog
1.git log
![w在这里插入图片描述](https://img-blog.csdnimg.cn/direct/2901ea20dac94e339c69566663ec2029.png
此时,如果你执行版本回退的命令,然后再执行 git log ,就会看到如下图:
就是,git log 会展示出上一次及其再往前的日志信息,而被你撤销的那条就不会被展示出来。
2.git reflog
还是上面个例子,此时,再去执行
$ git reflog
我们可以发现, git reflog 会把所有的日志信息都给你展示出来,包括进行版本回退的那条,同时,它也告诉了你,版本已经回退到上一次提交的。
总结
以上就是,我对于git log 和 git reflog 的理解。如若有不同的理解,欢迎补充。