変更を記録する - git commit
変更をリポジトリに記録します。
概念図
構文
bash
git commit [-m <message>]使用例
メッセージ付きでコミット
bash
git commit -m "feat: add login page"直前のコミットを修正
bash
git commit --amend--amend の実践的な使い方
--amend は直前のコミットを「やり直す」オプションです。
新しいコミットを作るのではなく、直前のコミットを置き換えます。
実質的には「古いコミットを削除して新しいコミットを作る」動作なので、コミットハッシュが変わります。
| 状況 | 対処法 |
|---|---|
| メッセージの typo を直したい | git commit --amend -m "正しいメッセージ" |
| ファイルを追加し忘れた | git add → git commit --amend --no-edit |
| 直前のコミットを丸ごとやり直したい | git reset --soft HEAD~1 → 修正 → 再コミット |
--no-edit はメッセージを変更せずに内容だけ差し替えたい場面で便利です。
bash
# メッセージだけ修正
git commit --amend -m "正しいメッセージ"
# ファイルの追加忘れを直前のコミットに含める
git add forgot-this-file.ts
git commit --amend --no-edit注意点
コミットメッセージはチームの規約に従う
一般的には1行目に概要(50文字以内)、空行を挟んで詳細な説明を記述する形式が推奨されます。
プッシュ済みの
--amendは危険コミットハッシュが変わるため、プッシュ済みのコミットに
--amendすると履歴の不整合が発生します。push 前後での使い分け・revertとの対比・--force-with-leaseの安全な使い方は、ガイド プッシュ済みコミットの修正方法 を参照してください。
Git Ready