Push済みコミットのメッセージを途中のものだけ変更する方法【git rebase -i】

PROBLEM

いつも通り、Githubにポチポチとpushしている時に、うっかり途中のコミットメッセージでtypoしてた、omg。

(スクショはブログ用のサンプル)

“機能”が”昨日”になっているというミスの想定。

commitの差分ならfixupコミットでrebaseで取り込めるけど、そういえばcommitメッセージ自体の途中修正ってできるのか知らなかったので調べることに。

結果、できる。

ただpushしている以上はforce-pushは必須となるのでやる前は他の人もそのブランチに関わっていないか確認してからやるように。

解決方法

Rebase実行 & Reword指定

まずは直したい対象のコミットの一個前のhashを取得してそこからrebase実行

git reabse -i (対象コミットの一個前のHash値)

そうすると、こんな画面になるので、昨日になっているcommitの”pick“を”reword“にして保存する。

commitメッセージ修正 & force push

rewordをつけると、編集画面に移行するので、ここでcommitメッセージを修正

修正できたら保存、force pushしてcommitメッセージが更新されていることを確認。]

ヨシ。