如何删除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标志用于删除未跟踪和忽略的文件。
相关推荐
Tairitsu_H1 小时前
[版本控制器Git] Git 远程仓库 | 多人协作 | 企业级 Git Flow 开发模型
git·版本控制器·远程仓库
我先去打把游戏先1 小时前
Git-Rebase使用指南-从原理到实战
服务器·git·嵌入式硬件·物联网·ubuntu
kaixin_learn_qt_ing4 小时前
我有两个程序,它们在不同的项目中,但是它们复用了一部分头文件,它们在两个不同的git仓库中,有什么好的办法可以让它们复用吗?
git
greatofdream5 小时前
git rebase时如何解决merge节点冲突问题
大数据·git·elasticsearch
敲敲敲-敲代码21 小时前
git安装记录
git
我是人✓21 小时前
Git入门:从零开始掌握分布式版本控制
分布式·git
Aurora_eye1 天前
Git 笔记
笔记·git
解道Jdon1 天前
FigCraft把Figma用Rust从零重写了一遍
ide·windows·git·svn·eclipse·github·visual studio
橙橙笔记1 天前
QT安卓软件的制作
android·git·qt·软件
我是人✓1 天前
Git远程协作与标签管理全攻略
git