What's wrong about `git revert <commit-sha>`? It should be just fine, supposing no one changed the mentioned files in the meantime.
git checkout -- <file>
This will revert the file back to the the last checked out version. git checkout <sha-1> -- <file>
Will revert a file to the state it was in, in that particular sha-1.