如何删除git中未跟踪的文件

以一个分支为例,我们在其中进行了一些更改并添加了新文件。但是,如果我们不再需要这些更改,我们可以使用以下方法重置更改:

bash 复制代码
git reset --hard

上面的代码将删除已处于版本控制之下的文件中的更改。reset即使使用该命令后,未跟踪的文件仍然会存在。


要删除未跟踪的文件,请使用该git clean命令。

假设我们有一个新文件 ( file1.txt) 和一个新文件夹 ( folder1),该fileinsidefolder.txt文件已添加到我们的分支中:

试运行

Dry Run 将告诉您执行命令后将删除哪些文件clean

bash 复制代码
git clean -n 

这只会列出文件,要列出文件夹使用

bash 复制代码
git clean -nd

删除未跟踪的文件和文件夹

-f要使用带有命令的标志来删除未跟踪的文件git clean

bash 复制代码
git clean -f

要删除子文件夹内未跟踪的文件,请使用:

bash 复制代码
git clean -f folderpath 

未跟踪的文件现在将被删除。如果您也想删除未跟踪的文件夹,可以使用以下-d标志:

bash 复制代码
git clean -fd

要删除忽略文件,请使用以下-x标志:

bash 复制代码
git clean -fx

概括

  • 未跟踪的文件一旦删除,就无法恢复。
  • 在运行 git clean 命令之前,先dry run了解哪些文件将被删除。
  • -n标志用于执行试运行。
  • -f 标志用于删除未跟踪的文件。
  • -fd标志用于删除未跟踪的文件和文件夹。
  • -fx标志用于删除未跟踪和忽略的文件。
相关推荐
vibecoding日记3 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
程序员小崔日记3 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger4 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
DianSan_ERP5 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
红豆子不相思5 天前
Tomcat 环境搭建与集群实战
服务器·git·tomcat
杰哥技术分享5 天前
Git 仓库迁移技术文档:从 CODING.net 迁移至腾讯云 CNB
git
梅孔立5 天前
Ansible 100 台服务器一键管控实战 进阶版
服务器·git·ansible
qq_426003965 天前
git切换当前分支到远程分支
git
ON10N6 天前
100% 纯 Vibe Coding,我是怎么用 AI 撸出一个 VS Code 插件的
git·ai编程·visual studio code