git-clean - 从工作树中删除未跟踪的文件
概要
git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <path>…
描述
通过从当前目录开始递归删除不受版本控制的文件来清理工作树。
通常,只会删除 Git 未知的文件,但如果
-x
指定了该选项,则也会删除忽略的文件。例如,这对于删除所有构建产品很有用。如果
<path>...
给出了任何可选参数,则只有那些路径会受到影响。
步骤 1 是使用-n
选项显示将删除的内容:
# Print out the list of files and directories which will be removed (dry run)
git clean -n -d
清理步骤 -当心:这将删除文件:
# Delete the files from the repository
git clean -f
git clean -f -d
或git clean -fd
git clean -f -X
或git clean -fX
git clean -f -x
或git clean -fx
请注意X
后面两个命令的大小写差异。
如果clean.requireForce
在您的配置中设置为“true”(默认值),则需要指定-f
否则实际上不会发生任何事情。
再次查看git-clean
文档以获取更多信息。
选项
-f
,--force
如果 Git 配置变量 clean.requireForce 未设置为 false,除非给出或
-f
,否则 git clean 将拒绝运行。-n``-i
-x
不要使用从 .gitignore(每个目录)和 读取的标准忽略规则
$GIT_DIR/info/exclude
,但仍然使用-e
选项给出的忽略规则。这允许删除所有未跟踪的文件,包括构建产品。这可用于(可能与 git reset 结合使用)来创建原始工作目录以测试干净的构建。
-X
仅删除 Git 忽略的文件。这对于从头开始重建所有内容可能很有用,但保留手动创建的文件。
-n
,--dry-run
实际上不要删除任何内容,只需显示将要执行的操作。
-d
除未跟踪的文件外,还删除未跟踪的目录。如果未跟踪的目录由不同的 Git 存储库管理,则默认情况下不会将其删除。
-f
如果您真的想删除这样的目录,请使用选项两次。