Really great point and also really illustrates the tree structure underneath the hood for git and how it rules everything.
The joke that isn't a joke is that you really need a CS degree to use git. It's not wrong.
The git default arguments makes for a very inconsistent experience, agreed.
And then `git checkout .` vs `git reset --hard/soft` vs `git cleanup` are all super similar but very different.
Still love it more than perforce/svn (I did like mercurial a little better back in the day but I doubt that might still be the case).
----- `git reflog` is king and shows you the truth.