全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页
📅 2026-05-11 5 分钟 ✍️ juanwangdev

git clean 清理未跟踪文件

git clean 命令删除工作区中未被 Git 跟踪的文件和目录。

基本用法

Bash
# 查看将被删除的文件(不实际删除)
git clean -n
git clean --dry-run

# 删除未跟踪的文件
git clean -f

# 删除未跟踪的文件和目录
git clean -fd

常用选项

选项说明
-n, --dry-run预览,不实际删除
-f, --force强制删除文件
-d包含目录
-x包含被忽略的文件
-X只删除被忽略的文件
-i交互模式

使用示例

Bash
# 预览将要删除的文件
git clean -n

# 删除未跟踪的文件
git clean -f

# 删除未跟踪的文件和目录
git clean -fd

# 删除所有未跟踪文件(包括被忽略的)
git clean -fdx

# 只删除被忽略的文件
git clean -fdX

# 交互式删除
git clean -i

交互模式

Bash
$ git clean -i
Would remove the following item:
  untracked_file.txt
*** Commands ***
  1: clean                2: filter by pattern    3: select by numbers
  4: ask each             5: quit                 6: help
What now>

实用场景

清理编译产物

Bash
# 删除所有未跟踪文件(包括 .gitignore 中的)
git clean -fdx

只清理被忽略的文件

Bash
# 只删除 .gitignore 中列出的文件
git clean -fdX

安全清理

Bash
# 先预览再删除
git clean -nfd
# 确认无误后执行
git clean -fd

git clean 不可恢复,建议先用 -n 预览。与 git reset --hard 配合可彻底清理工作区。

要点总结

  1. -n 预览,不实际删除
  2. -f 删除未跟踪文件
  3. -d 包含目录
  4. -x 包含被忽略文件
  5. -X 只删除被忽略文件
  6. 使用前先用 -n 预览,避免误删

📝 发现内容有误?点击此处直接编辑

← 上一篇 git checkout 切换与恢复
下一篇 → git clone 克隆仓库
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库