Oh sh*t, git! is a collection of git problems, their solutions, and some explanations of how that happened and how to get out of it.
Git is hard: screwing up is easy, and figuring out how to fix your mistakes is f*cking impossible. Git documentation has this chicken and egg problem where you can’t search for how to get yourself out of a mess, unless you already know the name of the thing you need to know aboutin order to fix your problem.