git reset --hard <tag/branch/commit id>
Notes:
git reset without the --hard option resets the commit history, but not the files. With the --hard option the files in working tree are also reset. (credited user)
Capture all changes to an application state as a sequence of events.
We can query an application's state to find out the current state of the world, and this answers many questions. However there are times when we don't just want to see where we are, we also want to know how we got there.