本メディアにはプロモーション広告が含む場合があります。但し、掲載内容は事実に反して優遇されることはありません。

【簡単解説】Gitでコミットとプッシュした編集の取り消し方法【git revert】

Git・SourceTree

今回はGitでpushした内容の取り消しを行いたいと思います。

スポンサーリンク

やりたいこと

①ローカルリポジトリにcommitした内容をもとに戻す
②リモートリポジトリにpushした内容をもとに戻す

<イメージ>
f:id:TechnologyShare:20200426195339p:plain

コミットの取り消し

git logコマンドで取り消したいコミットIDを確認する

以下過去にコミットした内容のコミットIDを確認できるコマンドになります。

git log

実行結果

commit 4354ebde1ce828f3a509ae3c0b96fe245e06fabe (HEAD -> Techs_test_branch1)
Author: TechReport <ww.ys7my@gmail.com>
Date:   Sun Apr 26 19:57:18 2020 +0900
取り消しテスト

コミットIDは「4354ebde1ce828f3a509ae3c0b96fe245e06fabe」になります。
ちなみに(HEAD -> XXXXXXX(ユーザ名))がついているものは最新のコミットという印になります。
「取り消しテスト」と記載されている箇所はコミット時に設定したメッセージになります。

git revert コマンドで任意のコミットを取り消し

以下コミットIDを指定して取り消しするコマンドです。

git revert <commit id>

例)git revert 4354ebde1ce828f3a509ae3c0b96fe245e06fabe

コッミトメッセージの入力が求められるため 必要に応じて以下コマンドで終了してください。
・変更した場合:【:wq】保存して終了
・変更しない場合:【:q!】保存せずに終了

実行後に git logコマンドで確認してみましょう。

commit eec92d42ab1efd91ccfcdf6d91cf90b7920ca073 (HEAD -> Techs_test_branch1)
Author: TechReport <ww.ys7my@gmail.com>
Date:   Sun Apr 26 20:04:48 2020 +0900
Revert "取り消しテスト"
This reverts commit 4354ebde1ce828f3a509ae3c0b96fe245e06fabe.

取り消し(reverts )されてますね。これでローカルにコミットした内容の取り消しは完了です。

push コマンドでリモートリポジトリに反映

もし、取り消したいcommitを既にリモートリポジトリにpushしてしまっている場合は最後にpushしてあげましょう

git push origin [ブランチ名]

例) git push origin Techs_test_branch1

master場合は「git push」のみ

これでリモートリポジトリへの取り消し修正も完了です。

参考)revert コマンドの便利なオプション

最新のコミットを指定した取り消し

コミットIDを指定せずに「HEAD」と入力しましょう。

git revert HEAD

取り消し時にメッセージの編集をスキップしたい

末尾に「–no-edit」を付与してあげましょう。

git revert <commit> --no-edit

以上です。

<関連記事>

・コマンドラインから脱却・Gitクライアントツールはこちら
SourceTreeのダウンロード・インストール for Windows 10【Gitクライアント】 – Tech’s Report

・コミットとプッシュのやり方はこちら
【簡単解説】Gitのコミットとプッシュのやり方【commit – push】 – Tech’s Report

・クローンとブランチ作成のやり方はこちら
【簡単解説】Gitのクローンとブランチ作成のやり方【clone – checkout】 – Tech’s Report

・チェックアウト・ブランチ切り替えはこちら
【簡単解説】Gitのブランチを切り替える方法【git checkout】 – Tech’s Report

・ブランチのマージのやり方はこちら
【簡単解説】Gitのブランチをmasterにマージする方法【git merge】 – Tech’s Report

コメント