簡體中文 ▾ 主題 ▾ 最新版本 ▾ git-clean 最後更新於 2.45.0

名稱

git-clean - 從工作樹中移除未跟蹤的檔案

概要

git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] [<pathspec>…​]

描述

透過遞迴刪除未受版本控制的檔案來清理工作樹,從當前目錄開始。

通常,只刪除 Git 未知的檔案,但如果指定了 -x 選項,則也會刪除被忽略的檔案。例如,這對於刪除所有構建產物可能很有用。

如果給定了可選的 <pathspec>... 引數,則隻影響與 pathspec 匹配的那些路徑。

選項

-d

通常,當未指定 <pathspec> 時,git clean 不會遞迴進入未跟蹤的目錄,以避免刪除過多內容。指定 -d 以使其也遞迴進入此類目錄。如果指定了 <pathspec>,則 -d 無關緊要;所有與指定路徑匹配的未跟蹤檔案(--force 下提到的巢狀 Git 目錄除外)都將被刪除。

-f
--force

如果 Git 配置變數 clean.requireForce 未設定為 false,git clean 將拒絕刪除檔案或目錄,除非給定 -f 選項。除非給定第二個 -f 選項,否則 Git 將拒絕修改未跟蹤的巢狀 Git 倉庫(帶有 .git 子目錄的目錄)。

-i
--interactive

顯示將要執行的操作並以互動方式清理檔案。詳見“互動模式”。配置變數 clean.requireForce 被忽略,因為此模式透過互動方式提供了自己的安全保護。

-n
--dry-run

實際上不執行任何刪除操作,只顯示將要執行的操作。配置變數 clean.requireForce 被忽略,因為無論如何都不會刪除任何內容。

-q
--quiet

安靜模式,只報告錯誤,不報告成功刪除的檔案。

-e <pattern>
--exclude=<pattern>

除了標準忽略規則(參見 gitignore[5])外,也使用給定的排除模式。

-x

不使用標準忽略規則(參見 gitignore[5]),但仍使用命令列中透過 -e 選項給出的忽略規則。這允許刪除所有未跟蹤的檔案,包括構建產物。這可以用於(可能與 git restoregit reset 結合使用)建立一個乾淨的工作目錄,以測試乾淨的構建。

-X

只刪除 Git 忽略的檔案。這對於從頭開始重建所有內容,但保留手動建立的檔案可能很有用。

互動模式

當命令進入互動模式時,它會顯示要清理的檔案和目錄,並進入其互動式命令迴圈。

命令迴圈顯示可用子命令列表,並給出提示符 "What now> "。通常,當提示符以單個 > 結尾時,您只能選擇給定的一個選項並按回車鍵,例如:

    *** Commands ***
	1: clean                2: filter by pattern    3: select by numbers
	4: ask each             5: quit                 6: help
    What now> 1

只要選擇是唯一的,您也可以說 cclean

主命令迴圈有 6 個子命令。

clean

開始清理檔案和目錄,然後退出。

按模式篩選

這會顯示要刪除的檔案和目錄,併發出“Input ignore patterns>>”提示。您可以輸入用空格分隔的模式來將檔案和目錄從刪除中排除。例如,“*.c *.h”將排除以“.c”和“.h”結尾的檔案。當您對過濾結果滿意時,按回車鍵(空輸入)返回主選單。

按數字選擇

這會顯示要刪除的檔案和目錄,併發出“Select items to delete>>”提示。當提示符以雙 >> 結尾時,您可以進行多個選擇,用空格或逗號連線。您也可以指定範圍。例如,“2-5 7,9”從列表中選擇 2,3,4,5,7,9。如果範圍中的第二個數字被省略,則選擇所有剩餘專案。例如,“7-”從列表中選擇 7,8,9。您可以使用 * 來選擇所有內容。當您對過濾結果滿意時,按回車鍵(空輸入)返回主選單。

逐個詢問

這將開始清理,您必須逐個確認才能刪除專案。請注意,此操作效率不如上面兩個操作。

quit

這使您可以在不進行任何清理的情況下退出。

help

顯示互動式 git-clean 的簡要用法。

配置

本節中以下所有內容均從 git-config[1] 文件中選擇性地包含。內容與彼處相同:

clean.requireForce

一個布林值,用於使 git-clean 拒絕刪除檔案,除非給定 -f 選項。預設為 true。

另請參閱

GIT

Git[1] 套件的一部分

scroll-to-top