ファイルの変更を取り消す(直前のコミットの状態に戻る) git checkout
- ファイルを変更
- git statusで確認するとworking treeにmodified(変更済み) ファイルが出る
- git checkoutコマンドでワークツリーの変更を取り消す(ファイルは直前のコミットの状態に戻る)
$ git checkout -- Git_MEMO.md
git checkout コマンドで取り消しできないケース
新規でファイル作成した時やファイル名を変更した時はgit checkoutが使えないので、手動でファイル削除します。
ステージングエリアへの登録を取り消す git reset HEAD ファイル名(ファイルの変更はしない)
ファイル変更し、ファイルをステージングエリアに登録 ステージングエリアへの登録を取り消す
$ git reset HEAD Git_MEMO.md Unstaged changes after reset: //resetによってunstagedされた M Git_MEMO.md
HEADは最後にコミットした状態を意味しています。
結論
ファイルの内容も変更前に戻したい時はgit checkoutコマンド ファイルの内容はそのままでステージングだけ戻したい時はgit reset HEADコマンド