@phpstorm “Local History” saves my *ss for a second time after I “reset hard” my git repo in the wrong folder containing quite some uncommitted code.
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!Glad you recovered your code anyway!
@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
How would you discard all/numerous changes without a hard reset?
I normally click the “discard all changes” button in VSCode and it asks me if I am sure. That confirmation dialog has saved me a few times!
From the command line I’d normally
git checkout .
andgit clean -ffxd
. I guess you could say it’s no different togit reset --head HEAD
in a sense…
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.
Two things:
-
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.
-