🧊

Gitのcheckoutでローカルのファイルを戻す

Git管理下、いわゆるローカルで作業してて、内容を保存。
ファイルを閉じる。

あ、やっぱ今の保存なし!

・・・閉じてしまったからCtrl+Zも効かねぇ!

って時に使うコマンド。

git checkout

branchの切り替えに使ったこのコマンドが、そういう用途でも使えるそうな。

# そのディレクトリ全部
git checkout .

# 単品
git checkout hoge.html

でもあくまで戻せるのは、「最後にコミットした時点まで」
何回も開いて保存して閉じてしてた場合に、2回閉じる前まで!ってのはできません。

・・・できたら良かったのに。

そんでもってこのコマンドは、以下と同じ。

git checkout HEAD hoge.html

チェックアウト=作業開始の宣言と捉えるならば、
最後に作業開始しようとした瞬間=最後にコミットした直後

そのコミットした瞬間に立ち戻る・・って意味か。

git checkout HEAD^ hoge.html

こうすると、直近でコミットしたそのもう1回前のコミットの内容にファイルを戻すことができる。

上記とは直接関係ないものの、チェックアウトについてはココがわかりやすかったです。

参考:続続・イラストでわかるgit入門の入門:checkoutをする : アシアルブログ