通常、ファイルへの変更を破棄するには、次のようにします。
git checkout -- <file>
破棄したい変更がファイルの削除である場合はどうなりますか? 上記の行ではエラーが発生します:
error: pathspec '<file>' did not match any file(s) known to git.
他の変更を元に戻さずにその単一のファイルを復元するコマンドは何ですか?
ボーナスポイント:また、破棄したい変更がファイルの追加である場合はどうなりますか? その変更をステージ解除する方法も知りたいです。
ベストアンサー1
またはに続く、git rm <file>
あるいは類似の効果を元に戻したいとします。rm <file>
git add -A
# this restores the file status in the index
git reset -- <file>
# then check out a copy from the index
git checkout -- <file>
元に戻すにはgit add <file>
、まだコミットしていないと仮定すると、上記の最初の行で十分です。