Viewing past Git actions with git reflog
The reflog
command stores information on updates to the tip of the branches in Git, where the normal git log
command shows the ancestry chain from HEAD
, and the reflog
command shows what HEAD
has pointed to in the repository. This is your history in the repository that tells how you have moved between branches, created your commits and resets, and so on. Basically, anything that makes HEAD
point to something new is recorded in the reflog
. This means that by going through reflog
command, you can find lost commits that none of your branches nor other commits point to. This makes the reflog
command a good starting point for trying to find a lost commit.
Getting ready
Again, we'll use the hello world
repository. If you make a fresh clone, make sure to run the scripts for this chapter so that there will be some entries in the reflog
command. The scripts can be found on the book's homepage. If you just reset the master
branch to origin/master
after performing...