Gitコマンドの一つ、git add はファイルの変更内容をステージングエリアに追加するコマンドです。Gitを使う上で最も基本的なコマンドの一つですので初心者の方は覚えておきましょう。多用するコマンドだけにオプションもいくつか用意されているため、Gitに慣れてきた方も作業をもっと楽にすることができるかもしれません。
目次
ステージングエリアとは
Gitではファイルの変更内容をコミットしてローカルリポジトリに記録する前に、いったんステージングエリアに追加する必要があります。
ステージングエリアの役割はパスワードや環境変数が書いてあるファイルなど、コミットしたくないファイルを仕分けるための一時保存場所と考えていただいて良いでしょう。
Gitで変更履歴を保存する流れは下記のようになります。
作業ディレクトリ
↓ git add
ステージングエリア
↓ git commit
ローカルリポジトリ
↓ git push
リモートリポジトリ
このうちファイルの変更内容を作業ディレクトリからステージングエリアに追加するコマンドが git add です。
git addの使い方
実際に git add コマンドを使ってみましょう。
ローカルリポジトリを用意して index.html というファイルを保存しておきました。
git status コマンドで確認するとこのファイルがアントラッキング状態であることがわかります。
1 | git add index.html |
特に何も表示されないのでもう一度git status コマンドで確認してみます。

ファイルの変更内容(今回は新しいファイルの追加)がステージングエリアに追加されていることがわかります。
git status コマンドを使ったワーキングツリーの状態確認については下記の記事をご参照ください。
git statusコマンドでファイルのステータスを確認する方法
git addで使用可能なオプション
git addコマンドにつけられるオプションには下記のようなものがあります。
全ての変更をステージングエリアに追加
1 | git add . |
現在のディレクトリ配下の全ての変更をステージングエリアに追加します。
ファイル名を指定してステージングエリアに追加
1 2 | git add ファイル名 git add ファイル名 ファイル名 |
指定したファイルをステージングエリアに追加します。スペースで区切れば複数のファイルを指定することもできます。
特定の形式のファイルのみステージングエリアに追加
1 | git add *.ファイル形式 |
指定した形式のファイルのみステージングエリアに追加します。
git管理下のディレクトリの全ての「追加・変更・削除」をステージングエリアに追加
1 | git add -A |
addコマンドのシミュレーション
1 | git add -n |
実際にファイルをステージングエリアには追加せずに実行結果を確認することができます。