git clean -fd
是一个 Git 命令,用于强制删除当前目录中未被跟踪的文件和目录(即工作区中的“垃圾文件”)。以下是详细说明:
命令解释
-f
(force):强制删除,若未配置 Git 默认需要此参数才允许清理。-d
:同时删除未被跟踪的空目录(如果不加此选项,默认只删文件)。- 注意:该操作不可逆!被删除的文件无法通过 Git 恢复(除非本地有备份)。
执行场景示例
假设你的项目目录下有如下未被跟踪的内容:
./untracked_file.txt
./build/ # 空目录
./tmp/output.log
运行 git clean -fd
后:
untracked_file.txt
被删除。build/
和tmp/
目录(包括其内容)被递归删除。
安全建议
先预览:用
-n
参数模拟操作,确认哪些文件会被删除(不实际执行):git clean -fdn
输出示例:
Would remove untracked_file.txt
Would remove build/
Would remove tmp/output.log
排除特定文件/目录:使用
.gitignore
或-x
/-X
参数控制清理范围。重要文件备份:确保工作区中没有未提交的重要数据!
扩展选项
选项 | 作用 |
---|---|
git clean -fxdn |
预览 + 强制清理(包括忽略规则外的文件) |
git clean -fXdn |
*仅*清理被 .gitignore 忽略的文件 |
如果有其他疑问,可以进一步讨论!
内容由零声教学AI助手提供,问题来源于学员提问