git status 指令
使用情境
狀態
$ git status
On branch master
nothing to commit, working tree clean
狀態階段 |
中譯 |
說明 |
Untracked files |
未追蹤 |
還未被追蹤的狀態 |
Changes not staged for commit |
已修改 |
有被更動但尚未要提交的檔案 |
Changes to be committed |
已暫存 |
將要提交的檔案 |
nothing to commit, working tree clean |
已提交 |
已提交的檔案及變動記錄 |
工作區、暫存區、儲存庫
區域
區塊名稱 |
中譯 |
說明 |
working directory |
工作目錄 |
經過修改的檔案 |
staging area / index |
暫存區域 |
要提交的變動清單 |
local repository |
儲存庫 |
已提交的檔案及變動記錄 |
.gitignore
如果被 ignore 考量進來,又可以在分為:
- 被追蹤:被加入 index 的檔案
- 還沒被追蹤:還沒被加入 index 的檔案
- 被忽略:被定義在忽略清單的檔案
實際情況會接近,如下圖所示:
語法結構
usage: git status [<options>] [--] <pathspec>...
-v, --verbose be verbose
-s, --short show status concisely
-b, --branch show branch information
--porcelain machine-readable output
--long show status in long format (default)
-z, --null terminate entries with NUL
-u, --untracked-files[=<mode>]
show untracked files, optional modes: all, normal, no. (Default: all)
--ignored show ignored files
--ignore-submodules[=<when>]
ignore changes to submodules, optional when: all, dirty, untracked. (Default: all)
--column[=<style>] list untracked files in columns