Menu
Coddy logo textTech

Git Add

最終更新

git add は変更をステージングエリア(インデックス)へ移し、次のコミットに含めるよう印を付けます。1 つのファイルをステージする、git add . で一度にすべてをステージする、-p で個々のチャンクを対話的に選ぶ、といったことができます。ステージングはファイルを編集してからコミットするまでの間のステップです。

これらをターミナルプレイグラウンドで試してみましょう。ブラウザ内の本物のシェルで、インストールは不要です。

git add はワーキングツリーの変更をステージングエリアへコピーします。この時点ではまだ何もコミットされません。

構文

CommandWhat it does
git add file.txt1 つのファイルをステージする
git add .現在のフォルダ内のすべての変更をステージする
git add -Aリポジトリ全体のすべての変更をステージする
git add -p選択したチャンクを対話的にステージする
git add *.jsパターンに一致するファイルをステージする
git restore --staged file.txtファイルをアンステージする(変更は保持)

よくあるケース

GoalCommand
すべてをステージするgit add .
ファイルの一部をステージするgit add -p
ファイルをアンステージするgit restore --staged file.txt
何がステージされているか確認するgit status

git add に関するよくある質問

git add は何をしますか?
変更をステージします。つまり次のコミットに含まれるよう変更をインデックスにコピーします。ファイルを編集してもステージはされません。git add <file> を実行して準備完了と印を付けます。その後 git commit がステージされている内容をそのまま記録します。ステージングにより、一部の変更だけをコミットし、残りを後回しにできます。
git add . と git add -A の違いは何ですか?
git add . は現在のディレクトリとその配下の変更をステージし、新規・変更・削除されたファイルを含みます。git add -A は現在のディレクトリに関係なくリポジトリ全体の変更をステージします。リポジトリのルートでは両者は同じ動作になり、サブフォルダにいるときに違いが出ます。
ファイルの一部だけをステージするには?
git add -p(パッチモード)を使います。Git は各変更(「ハンク」)を順に示し、それをステージするか尋ねるので、1 つのファイル内の無関係な編集を別々のコミットに分けられます。ハンクをステージするには y、スキップするには n、さらに分割するには s を押します。
ファイルをアンステージするには?
git restore --staged <file>(新しい Git)または git reset <file>(古い Git)を実行します。どちらも作業ツリーの編集内容を残したままファイルをステージングエリアから外します。git add の逆です。
これをオンラインで練習できますか?
はい。ターミナルプレイグラウンドを開いて、ブラウザ内の本物のシェルで git add を実行できます。インストールは不要です。Coddy の無料の対話型 Git コースでも、ステージングとコミットを段階的に扱っています。
Coddy programming languages illustration

Coddy で Git を学ぼう

始める