🔖
【Git】git add の基本と --patch の使い方を解説
はじめに
Gitで作業をコミットする前に使う git add
。
実は git add
には、基本的な使い方だけでなく、作業を効率化できる便利なオプションも用意されています。
本記事では、
-
git add
の基本的な使い方 - 差分を選んで追加できる
--patch
の活用法
について解説します。
git add
の基本
1. git add
を使うことで、変更内容を「ステージングエリア」に送ることができます。
このステージングエリアに入った変更だけが、git commit
で履歴に残ります。
まずは基本的な使い方を確認しておきましょう。
git add ファイル名
これは「指定したファイルの変更内容をステージングエリアに追加する」コマンドです。
✅ よくある使い方
git add . # カレントディレクトリ以下のすべての変更(新規・変更・削除)を追加
git add index.js # 特定のファイルだけを追加
git add -A # プロジェクト全体のすべての変更(新規・変更・削除)を追加
--patch
オプションとは?
2. git add --patch
(または -p
)を使うと、差分(hunk)ごとに追加するかどうか選択できます。
※ hunk とは「差分のかたまり」で、1つの変更ブロックのことを指します。
git add -p
実行すると、変更部分が1つずつ表示され、以下のような選択肢が出てきます。
Stage this hunk [y,n,q,a,d,e,?]?
入力 | 意味 |
---|---|
y |
この差分をステージに追加 |
n |
この差分はスキップ(ステージしない) |
q |
処理を終了 |
a |
以降のすべての差分を追加 |
d |
以降のすべての差分をスキップする(追加しない) |
e |
手動で差分を編集(やや上級者向け) |
? |
ヘルプを表示 |
✅ どんなときに便利か
- 1ファイルで複数の修正をしてしまったとき
- 意図しない変更を混ぜたくないとき
- コミットを分けて履歴をわかりやすくしたいとき
git add -p main.py
とすれば、main.py
の中でどの差分を含めるか選べます。
🔍 変更内容ごとに「追加する/しない」を選べるため、意図的にコミットを整理するのに役立ちます。
3. よくある注意点
-
git add -p
は、変更を「1行ずつ」ではなく「hunk(まとまり)単位」で分けるのが基本です。 - 「この行だけ入れたい」ができない場合は、
e
で手動編集、またはソースを分けて保存し直しましょう。
まとめ
やりたいこと | コマンド例 |
---|---|
すべての変更を追加したい | git add . |
特定のファイルだけ追加したい | git add index.js |
差分ごとに追加・選別したい | git add -p |
git add -p
は、変更内容をひとつずつ確認しながら追加できるため、
初心者の方にとっても、ミスを減らすうえで非常に役立つコマンドです。
不要な変更までコミットしてしまう事態を避けるためにも、
内容を確認しながらコミットすることが、後々のトラブル防止にもつながります。
本記事が参考になれば幸いです。
🔗 関連記事
Discussion