直前のコミットを修正する (Amend)
CoddyのTerminalジャーニー「バージョン管理」セクションの一部 — レッスン 42/58。
コミットを作成した直後に、メッセージが間違っていることに気づいたり、ファイルを含めるのを忘れたりした場合、次のコマンドでそのコミットを書き換えることができます:
git commit --amend -m "New message"これは、最新のコミットを、更新されたメッセージと現在ステージングされているすべての内容を含む新しいコミットで置き換えます。
忘れたファイルを直前のコミットに追加するには、まずそのファイルをステージングしてから、メッセージを変更せずに amend を実行します:
git add forgotten.txt
git commit --amend --no-edit--no-edit フラグは、既存のメッセージを保持します。
注意点として、amend(修正)は編集のように見えますが、実際には(新しいIDを持つ)まったく新しいコミットを作成します。まだ誰とも共有していないコミットのみを修正するようにしてください。さもないと、すでに古いバージョンを持っている共同作業者を混乱させることになります。
チャレンジ
簡単フォルダには app.py が含まれています。リポジトリを初期化し、ファイルをステージングして、メッセージ Inital commit(意図的なタイポ)でコミットしてください。
コミットを修正(amend)してメッセージを Initial commit に直し、git log -1 --pretty=%s を使用して最新のコミットの件名を表示してください。
チートシート
直近のコミットメッセージを --amend で修正します:
git commit --amend -m "New message"メッセージを変更せずに、忘れていたファイルを直前のコミットに追加します:
git add forgotten.txt
git commit --amend --no-editamend を行うと新しいコミット ID が作成されます。まだ他の人と共有していないコミットのみを修正するようにしてください。
自分で試してみよう
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。