Can deleted files that are added but not committed in Git be recovered?
This question already has an answer here:
Recovering added file after doing git reset –hard HEAD^
- Restore git repository/commits etc
- Recover code repository in Github?
- git deleted everything, how to recover files and folders
- Git recover uncommitted changes
- Recovering unstaged files from git
- how to recreate old commits that got missing and unreachable at repository move
2 Solutions collect form web for “Can deleted files that are added but not committed in Git be recovered?”
Since the files are already in your staging area (index), simply commit them using
git commit without any arguments. This will commit the contents of the index regardless of the current state of the working tree.
Then you can use
git reset --hard (if you don’t have other changes in the tree you want to keep) or
git checkout FILE1 FILE2... to restore the lost files into your working tree.
You can use
git fsck --lost-found to find all objects that are no longer referenced. You’ll want to look at ‘blob’ objects and see if any of them match the files you deleted. Hopefully you don’t have many unreferenced objects lying around.
As user4815162342 pointed out, the poster actually said the deletion had not been added yet, which means they can be retrieved with
git checkout, or simply committed right now to be sure they don’t go away.
I’m going to leave my answer up in case anyone else wants info on
git fsck --lost-found, but user4815162342’s answer should be accepted.