Data recovery and troubleshooting
It is almost impossible to never make any mistakes. This applies also to using Git. The knowledge presented in this book, and your experience with using Git, should help to reduce the number of mistakes. Note that Git tries quite hard not to help you avoid losing your work; many mistakes are recoverable. The next subsection will explain how you can try to recover from an error.
Recovering a lost commit
It may happen that you accidentally lost a commit. Perhaps you force-deleted an incorrect branch that you were going to work on, you rewound the branch to an incorrect place, or you were on an incorrect branch while starting an operation. Assuming something like this happened, is there any way to get your commits back and undo the mistake?
Because Git does not delete objects immediately and keeps them for a while, only deleting them if they are unreachable during the garbage collection phase, the commit you lost will be there; you just need...