Git – revert – 取り消しコミット

概要

“revert”は「元に戻す」意味。

  • git revertはコミットの内容を元に戻すためのrevertコミットを実行する
  • それまでのコミットの履歴を残したまま、その内容を打ち消す

準備

Git – タグで使った以下のリポジトリーを流用。

HEAD位置のコミットの内容を確認。commit-3でファイルに1行追加している。

sample.txtの内容も確認しておく。

revert実行

git revertでHEAD位置のコミットを指定。

git revert HEAD

実行するとエディターが起動し、revertコミットのデフォルトメッセージが表示される。

このままの内容で保存・終了すると、git revertの実行結果が表示されている。

ログを確認するとcommit-3は残ったままで、その後にRevert "commit-3"コミットが実行されている。

ファイルの内容はcommit-3の実行前に戻っている。

revertのrevert

revertコミットをさらにrevertすると元に戻る。

ログにも2回のrivertコミットの記録が残る。

sample.txtの内容も元に戻っている。

飛び越しはできない

冒頭のログの状態で、直前のコミットの1つ前のコミットを直接revertしようとするとエラー。

1つずつ遡るのは可能

まず直前のコミットをrevert。

ログ確認。

その上でcommit-2(ver_1.1タグ)のコミットをrevertは可能。

ログには2回のrevertコミットが残っていて、コミットを遡りながら1行ずつ追加された行を削除している。

ファイルはcommit-2実行前の状態に戻っている。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です