git status
コマンドの概要
ワーキングツリーおよびインデックスにおけるファイルの新規作成、削除、変更を確認できるコマンド。
- 新規作成ファイルなど、ワーキングツリーに存在するがまだGitに捕捉されていないもの
- ワーキングツリーとインデックスで内容が異なっているもの
- 前回コミットとインデックスで内容が異なっているもの
git commit
でコミットする前に、"インデックス"に意図通りステージングされているか確認するコマンドである。
変更された差分を確認するにはgit diff --cached
インデックスのファイルの状況を確認する方法
デフォルトではワーキングツリー全体を対象とする。
1$ git status
ディレクトリの指定やカレントディレクトリ以下を示す.
を指定も可
1$ git status <directory>
2$ git status .
ショートフォーマット
git status
ではgit status -s
によるショートフォーマットが有用。ショートフォーマットのときには、-b
オプションも同時に利用してブランチ名も表示した方が便利。
// 前回コミット後に foo.md を編集、bar.md を新規作成した場合
$ git status -s
M foo.md
?? bar.md
// git add すると
$ git add .
$ git status -s
M foo.md
A bar.md
ファイル名の前は、左の列がインデックス、右の列がワーキングツリーのステータスを示している。
ステータスの内容は以下の通り
= unmodified : 変更なし
M = modified : 変更あり
A = added : 追加
D = deleted : 削除
R = renamed : リネーム
U = Updated but unmerged : 変更されたがマージされていない