Gitで特定のファイルを指定したコミットの状態に戻す方法

ブランチを切って開発をしていて間違えてフレームワーク側のソースを変更したものをコミットしてしまった!

でもアプリケーション側のソースも変更をコミットしてあるので、フレームワーク側のソースだけを差し戻したい、そういう場合にはこのような手順で差し戻しを行います。

git branch --set-upstream-to=origin/<ブランチ名> <ブランチ名>
git pull
git log ファイルパス
git checkout <戻したいハッシュ値> ファイルパス
git commit -m "" ファイルパス
git push

git logで戻したいハッシュ値を調べます。

commit hroogfdsaled935t8 みたいに出てきます。

git checkoutで戻したいハッシュ値のファイルをチェックアウトします。

後は普段通りコミット&プッシュを行います。

Eclipseなどではソースコードのフォーマッターが効いてしまい、元のファイルに戻そうとしてもインデントなどが変わってしまうケースが多いので、このようにすると確実です。