"四度目のコミットだよ!"git便利でお腹がすいた。"五度目のコミットだよ!"いったん履歴を見てみましょう。履歴を見るのはlogコマンドですが、オプションを指定すると省略形で見やすくなります。最初のコミットだよ!こう変わってます。コマンドで使用したHEADは最新のコミットを意味します。HEADの後ろの^はいくつ前かを意味します。HEAD^ならHEADの一つ前。HEAD^^ならHEADの二つ前。上のコマンドは、最新のコミットの一つ前にsoftに(ファイルはいじらずコミットの記録だけ)戻す、って意味です。ファイルそのものは変わっていません。このHEAD^の部分にはlogコマンドで取得した文字列を指定することもできます。文字列全部を入力せず、--onelineを指定したときに出た先頭数桁だけで大丈夫です。--hardファイルそのものを二度目のコミットまで戻したい。そんなときは、softではなくhard!今は四度目のコミット時点にいるので、二度目のコミットまで戻すには^が二つ。HEAD^^test.txtを開くとテストデータだよ。二度目のコミット時点のデータまで戻った!ちなみに、^を一つもつけなければ最新のコミットに戻ります。最後のコミット以降の変更をすべて削除したいときにどうぞ。そんなときはreflog本当に戻したかったのは二度目じゃなくて三度目のコミットだった!というときはまずreflogコマンド。最初のコミットだよ!はい、これまでやったことが全部出ました。HEAD@{4}test.txtを開くとテストデータだよ。