git add コマンドは、作業ツリーで変更されたファイルや新規作成ファイルをステージングエリアに追加するためのコマンドです。
次のコミットに含めたい変更を選択する際に利用されます。
構文(Syntax)
git add [オプション] <ファイル/ディレクトリ/...>
主なオプション一覧
| オプション | 説明 | 使用例 |
|---|---|---|
<ファイル> | 特定のファイルをステージング | git add app.py |
. | カレントディレクトリ以下のすべてを追加 | git add . |
-A / --all | すべての変更(追加・変更・削除)を追加 | git add -A |
-u | 追跡中ファイルの変更・削除を追加(新規は除外) | git add -u |
-p | インタラクティブに変更の一部を追加 | git add -p app.py |
-n / --dry-run | 追加されるファイルを確認(実際には追加しない) | git add -n . |
実行例
ファイルを指定して追加
git add app.py
(app.py の変更が次のコミット対象になる)
ディレクトリ全体を追加
git add .
(カレントディレクトリ配下のすべての変更をステージング)
すべての変更を追加(削除も含む)
git add -A
追跡済みファイルの変更だけを追加
git add -u
インタラクティブに一部だけ追加
git add -p app.py
出力例(一部):
@@ -1,3 +1,4 @@
line1
+new line
Stage this hunk [y,n,q,a,d,j,J,g,/,s,e,?]?
dry-runで確認
git add -n .
出力例:
add 'app.py'
add 'readme.md'
エラー例(存在しないファイルを指定)
git add notfound.txt
出力例:
fatal: pathspec 'notfound.txt' did not match any files
関連コマンド
git status: ステージングの状態を確認する。git reset: ステージングからファイルを外す。git commit: ステージングされた内容を確定する。
備考
git addはファイルの内容を直接保存するのではなく、「次のコミットに含める候補」として登録する操作。.や-Aは便利だが、不要なファイルまで追加してしまうことがあるため.gitignoreを適切に設定することが重要。- インタラクティブモード(
-p)は部分的コミットに便利。
参考
- Git公式ドキュメント: https://git-scm.com/docs/git-add

コメント