Recover from losing uncommitted changes by "git reset --hard"

git

Solution

You cannot get back uncommitted changes in general.

Previously staged changes (`git add`) should be recoverable from index objects, so if you did, use `git fsck --lost-found` to locate the objects related to it. (This writes the objects to the `.git/lost-found/` directory; from there you can use `git show <filename>` to see the contents of each file.)

If not, the answer here would be: look at your backup. Perhaps your editor/IDE stores temp copies under /tmp or C:\TEMP and things like that.[1]

git reset HEAD@{1}

This will restore to the previous HEAD

[1] vim e.g. optionally stores persistent undo, eclipse IDE stores local history; such features might save your a**

Problem

Is there any way to recover uncommitted changes to the working directory from a `git reset --hard HEAD`?

Original source

Related problems