我如何从当前工作树中删除未跟踪的本地文件 ?


当前回答

git clean -f

将会从当前 git 中删除未跟踪的文件

git clean -fd

当您想要删除目录和文件时, 这将只删除未跟踪的目录和文件

其他回答

注意: 第一次浏览到目录并检查您想要清除的分支 。

-i交互式模式,它将告诉您要删除什么, 您可以从列表中选择一个动作 。

  1. 清洁文件 文件仅[不列出文件夹,也不清洗]:$ git clean -i

  2. 清洁文件和文件夹: $ git clean -d -i

-d包括目录。


如果您选择了c从列表中删除。文件/文件夹将被删除,因为文件/文件夹没有被跟踪,还会删除被你弄乱的文件/文件夹。 *

例如:如果您对远程的文件夹进行重组,并将修改拉到本地计算机中。其他人最初创建的文件/文件夹将放在过去的文件夹和您重组的新文件夹中。

清除 Git 仓库和所有子模块

以下命令将清除当前 git 仓库及其所有子模块的递归 :

(git clean -d -x -f && git submodule foreach --recursive git clean -d -x -f)

git add --all, git stashgit stash drop,在此顺序中尝试这三个命令以删除所有未跟踪的文件。如果将所有这些未跟踪的文件添加到 Git 并隐藏它们,则所有未跟踪的文件都将移到隐藏列表中,并删除最上面的列表,即,隐藏%0}将从隐藏列表中删除隐藏的更改 。

如果未跟踪的目录是自有的 git 仓库( 如子模块) , 您需要使用-f两次:

git clean -d -f -f

删除此 repo + 子模块中的所有额外文件夹和文件

这让你和新克隆人处于同样的状态

git clean -ffdx

删除此回调中的全部额外文件夹和文件, 但不删除子模块

git clean -fdx

删除额外的文件夹, 但不包括文件( 如: 构建或日志文件夹) 。

git clean -fd

删除额外文件夹 + 忽略的文件(但不是新添加的文件)

如果文件没有被忽略, 还没有被检查, 那么它会留下来 。 请注意首都 X 。

git clean -fdX

新的互动模式

git clean