git revert
git revertは、指定した特定のコミットを打ち消すコマンドです。
構文
- (構文)
- git revert [オプション] [値]
オプション | 説明 |
---|---|
--no-edit | コミットメッセージを編集しない |
-e --edit | コミットメッセージを編集する(デフォルト) |
-m <数値> --mainline | マージコミットを打ち消す場合にどちらのブランチに戻すか指定する ※どちらに戻すかは数値で指定する |
-n --no-commit | コミットをせずリバートする |
--help | コマンドのヘルプを表示する |
サンプル
コミットID「7e1863c」のコミットを打ち消す
git revert 7e1863c
コミットIDはgit logコマンドで確認できます。
コミットID「7e1863c」のコミットを打ち消す(コミットメッセージを編集なし)
git revert --no-edit 7e1863c
デフォルトのコミットメッセージが使われます。
コミットID「7e1863c」のコミットを打ち消す(コミットはしない)
git revert -n 7e1863c
手動でコミットする必要があります。
マージコミット「7e1863c」を打ち消し、1番目のブランチに戻す
git revert -m 1 7e1863c
ブランチの番号は git logで確認できます。
※git logで履歴を表示させるとマージコミットには以下のような表示があります。
Merge: <コミットID1> <コミットID2>
<コミットID1>に戻したい場合は1を、<コミットID2>に戻したい場合は2を指定します。
備考
- revertはリバートと読み、「元に戻す」という意味の英単語です。
- リバートを実行しても指定したコミットが消えるわけではなく、指定したコミットを打ち消すようなコミットを作成することでコミット前の状態にします。
- リバートを実行すると、-nオプションを指定しない限り自動的にコミットされます。
(git resetを使うと、指定したコミット自体が消えます。)