Restore file from old commit in git

I have an old commit that I did a few weeks ago. I want to restore only a single file from that commit. What do I do?


Solution 1:

git checkout 'master@{7 days ago}' -- path/to/file.txt

This will not alter HEAD, it will just overwrite the local file path/to/file.txt

See man git-rev-parse for possible revision specifications there (of course a simple hash (like dd9bacb) will do nicely)

Don't forget to commit the change (after a review...)

Solution 2:

  1. Check out the file from your old commit via git checkout [Revision_Key] -- path/to/file.
  2. Add, commit, push as appropriate.