如何从当前Git工作树中删除本地(未跟踪)文件?
时间:2020-03-05 18:52:56 来源:igfitidea点击:
如何从当前工作树中删除未跟踪的本地文件?
解决方案
回答
git-clean是我们想要的。它用于从工作树中删除未跟踪的文件。
回答
git-clean从工作树中删除未跟踪的文件
回答
根据Git文档git clean
Remove untracked files from the working tree
第1步是通过使用-n选项显示要删除的内容:
git clean -n
清洁步骤当心:这将删除文件:
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
- 力量
如果Git配置变量clean.requireForce未设置为false,除非给定-f,-n或者-i,否则git clean将拒绝运行。
-X
不要使用从.gitignore(每个目录)和$ GIT_DIR / info / exclude中读取的标准忽略规则,但仍要使用-e选项提供的忽略规则。这允许删除所有未跟踪的文件,包括构建产品。可以使用它(可能与git reset结合使用)创建一个原始的工作目录,以测试干净的构建。
-X
仅删除Git忽略的文件。这对于从头开始重建所有内容很有用,但保留手动创建的文件。
-n
-空运行
实际上不删除任何内容,只是显示将要执行的操作。
-d
除未跟踪的文件外,还删除未跟踪的目录。如果未跟踪的目录由其他Git存储库管理,则默认情况下不会将其删除。如果我们确实要删除这样的目录,请使用-f选项两次。
回答
使用git clean -f -d
确保目录也被删除。
然后,我们可以检查文件是否真的以git status
消失了。