18
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Git】2つ以上前のコミットを修正する。

Last updated at Posted at 2021-12-12

はじめに

commitを修正するときに直前のコミットを修正するには
「git commit --amend」を使用することで容易に修正することができます。
しかし、2つ以上前のコミットを修正するのは初心者にとっては少しハードルが高いです。
今回は2つ以上前のコミットを修正する方法を記載していきます。

事前準備

今回は、以下のような手順を踏んだ状態からコミットを修正していきます。

①index.htmlの作成
index.htmlが下記の状態でコミットメッセージ:「最初のコミットです。」でコミットしていきます。
スクリーンショット 2021-12-12 10.47.14.png

②style.cssの作成
style.cssを作成し、コミットメッセージ:「2番目のコミットです。」でコミットしていきます。
スクリーンショット 2021-12-12 10.50.31.png

②home.htmlの作成
コミットメッセージ:「3番目のコミットです。」でコミットしていきます。
スクリーンショット 2021-12-12 10.55.16.png

コミットの修正

今回は2番目のコミットを修正していきたいと思います。
現在のコミット履歴(git log --oneline)は以下のようになっています。
スクリーンショット 2021-12-12 10.57.57.png

①「git rebase -i HEAD〜n」コマンドを打つ
HEAD~2は新しいものから2つのコミットを表示します。

git rebase -i HEAD~2

②修正するコミットを「pick」→「edit」に修正
pickのコミットは現在のコミットをそのまま適用することになります。
修正したい2番めのコミットを「pick」→「edit」に修正したら、保存しエディタを終了します。
スクリーンショット 2021-12-12 11.05.10.png

※現在のコミット履歴を確認すると以下の状態になります。
スクリーンショット 2021-12-12 11.09.59.png

③ファイルを修正する。
ファイルを修正、ステージングし、「git commit --amend」コマンドを打ちます。
今回は下記のように「style.css」に色の指定をしました。
また、コミットメッセージを「2番目のコミットです(修正済み)。」に修正しました。
スクリーンショット 2021-12-12 11.15.07.png

④3番目のコミットを反映する。
下記コマンドを打つことで、3番目のコミットが反映されます。

git rebase --continue

無事2番目のコミットを修正することができました。
スクリーンショット 2021-12-12 11.19.45.png

18
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?