Asking for it if you git reset --hard with uncommitted changes tbh... I feel like Git shouldn't let you do that by default, but that would make Git slightly user friendly so I guess we can't have that!
@FizzyOrange Oh why this should not happen is a material to a whole book or at least a conf talk :D you know, commit at least daily, you should not have a 3d task worth of code and etc.
And what is the karma roundhouse-kick - I've been preaching about the bus factor in my team myself :D
Happened to me too and I panicked until I found LocalHistory. I think it was even a merge gone wrong after somebody had force pushed to a branch. What a crazy day that was.
Learning git reflog will save you from needing to worry about the sudden dread that comes from using reset hard in git.
Using an proper git client will save you needing to use reset hard in the first place. I highly recommend the confusingly named: Fork. It's free the same way that sublime text and winzip are: about once a month it asks for you to buy it but you can click on the "I'm still just trying it out" to keep using it for free.