設定與組態
取得與建立專案
基本快照
分支與合併
分享與更新專案
檢查與比較
修補
除錯
電子郵件
外部系統
伺服器管理
指南
- gitattributes
- 命令列介面規範
- Git 日常使用
- 常見問題 (FAQ)
- 詞彙表
- 掛鉤 (Hooks)
- gitignore
- gitmodules
- 修訂版本 (Revisions)
- 子模組
- 教學
- 工作流程
- 所有指南...
管理
底層命令 (Plumbing Commands)
- 2.53.0 → 2.55.0 無變更
-
2.52.0
2025-11-17
- 2.43.1 → 2.51.2 無變更
-
2.43.0
2023-11-20
- 2.36.1 → 2.42.4 無變更
-
2.36.0
2022-04-18
- 2.25.3 → 2.35.8 無變更
-
2.25.2
2020-03-17
- 2.25.1 無變更
-
2.25.0
2020-01-13
- 2.18.1 → 2.24.4 無變更
-
2.18.0
2018-06-21
- 2.9.5 → 2.17.6 無變更
-
2.8.6
2017-07-30
- 2.7.6 無變更
-
2.6.7
2017-05-05
- 2.5.6 無變更
-
2.4.12
2017-05-05
-
2.3.10
2015-09-28
- 2.1.4 → 2.2.3 無變更
-
2.0.5
2014-12-17
描述
對於透過命令列或透過 --stdin 從檔案提供的每個路徑名稱,檢查該檔案是否被 .gitignore(或排除機制的其他輸入檔案)排除,若被排除則輸出該路徑。
預設情況下,已追蹤的檔案不會被顯示,因為它們不受排除規則約束;但請參閱 '--no-index'。
選項
- -q
- --quiet
-
不輸出任何內容,僅設定結束狀態。這僅適用於單一路徑名稱。
- -v
- --verbose
-
不只列印被排除的路徑,對於每個符合排除模式的路徑,同時列印出該排除模式與路徑。(符合排除模式通常表示路徑被排除,但如果模式以 "
!" 開頭,則它是一個反向模式,符合它表示該路徑「不」被排除。)關於排除來源內部及來源之間的優先級規則,請參閱 gitignore[5]。
- --stdin
-
從標準輸入讀取路徑名稱,每行一個,而不是從命令列讀取。
- -z
-
修改輸出格式以供機器解析(見下文)。如果同時給定了
--stdin,輸入的路徑將以 NUL 字元而不是換行字元分隔。 - -n
- --non-matching
-
顯示未符合任何模式的給定路徑。這僅在啟用
--verbose時才有意義,否則無法區分符合模式的路徑與未符合模式的路徑。 - --no-index
-
執行檢查時不查看索引。這可用於除錯為什麼某個路徑被(例如
gitadd.)追蹤且未按使用者預期被規則忽略,或者在開發包含反向模式以符合先前用gitadd-f加入的路徑時使用。
輸出
預設情況下,任何符合忽略模式的給定路徑名稱都將被輸出,每行一個。如果沒有模式符合給定路徑,則不會為該路徑輸出任何內容;這意味著該路徑不會被忽略。
如果指定了 --verbose,輸出將是一系列如下格式的行
<source> <COLON> <linenum> <COLON> <pattern> <HT> <pathname>
<pathname> 是正在查詢的檔案路徑,<pattern> 是符合的模式,<source> 是該模式的來源檔案,<linenum> 是該模式在來源檔案中的行號。如果模式包含 "!" 前綴或 "/" 後綴,它們將被保留在輸出中。當參照由 core.excludesFile 設定的檔案時,<source> 將顯示為絕對路徑;當參照 .git/info/exclude 或目錄層級的排除檔案時,則顯示為相對於儲存庫根目錄的路徑。
如果指定了 -z,輸出中的路徑名稱將以 null 字元分隔;如果同時指定了 --verbose,則使用 null 字元取代冒號和水平定位字元(HT)
<source> <NULL> <linenum> <NULL> <pattern> <NULL> <pathname> <NULL>
如果指定了 -n 或 --non-matching,未符合的路徑名稱也將被輸出,此時除 <pathname> 外,每個輸出記錄中的所有欄位都將為空。這在非互動式執行時很有用,檔案可以遞增地串流傳輸到長時間執行的 check-ignore 處理序的 STDIN,而對於這些檔案中的每一個,STDOUT 都會指出該檔案是否符合模式。(如果不使用此選項,將無法區分「某個檔案沒有輸出」是因為它未符合任何模式,還是因為輸出尚未產生。)
緩衝行為如 git[1] 中 GIT_FLUSH 選項所述。呼叫者有責任避免因填滿輸入緩衝區或從空的輸出緩衝區讀取而導致的死鎖。
GIT
git[1] 套件的一部分