Git - deleted some files locally, how do I get them from a remote repository

I've deleted some files on my PC, how do I download them again?

Pull says: "Already up-to-date".


Solution 1:

Since git is a distributed VCS, your local repository contains all of the information. No downloading is necessary; you just need to extract the content you want from the repo at your fingertips.

If you haven't committed the deletion, just check out the files from your current commit:

git checkout HEAD <path>

If you have committed the deletion, you need to check out the files from a commit that has them. Presumably it would be the previous commit:

git checkout HEAD^ <path>

but if it's n commits ago, use HEAD~n, or simply fire up gitk, find the SHA1 of the appropriate commit, and paste it in.

Solution 2:

git checkout filename

git reset --hard might do the trick as well

Solution 3:

If you have deleted multiple files locally but not committed, you can force checkout

$ git checkout -f HEAD