Say I'm in a Git repository. I delete a file and commit that change. I continue working and make some more commits. Then, I find I need to restore that file.
I know I can checkout a file using git checkout HEAD^ foo.bar
, but I don't really know when that file was deleted.
- What would be the quickest way to find the commit that deleted a given filename?
- What would be the easiest way to get that file back into my working copy?
I'm hoping I don't have to manually browse my logs, checkout the entire project for a given SHA and then manually copy that file into my original project checkout.
git log --diff-filter=D -- path/to/file
– titaniumdecoygit checkout deletedFile
will undeletedeletedFile
if it's been deleted but that deletion has not yet been staged or committed. That's not what the question here is asking for; this question is about how to restore a file whose deletion was committed many commits ago. – Mark Amery