2.6 操作历史

前面笔者提到了通过git log指令查看提交的历史记录,但是如果通过git reset指令进行版本回退后,再通过git log指令就无法找到reset前的那个版本的commit id了,也就是说再想回到这个版本就无法指定commit id了。其实,git log还有一个增强版本,那就是git reflog指令。即使像上一节一样执行了版本回退,回退到了上一个版本,但通过git reflog指令后,可以得到如下所示的记录。

  1. 0fb569c HEAD@{0}: reset: moving to HEAD^
  2. 948cd7c HEAD@{1}: commit: update readme
  3. 0fb569c HEAD@{2}: commit: modify README
  4. ce8e133 HEAD@{3}: commit: add README
  5. 6c8ebf0 HEAD@{4}: commit (initial): init commit
  6. (END)

可以发现笔者所执行的所有操作在这里都能找到历史,当然前面也保留了该操作执行的commit id。