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


当前回答

要删除未跟踪的文件 :

git add .
git reset --hard HEAD

其他回答

git-清洁- 从工作树中移除未跟踪的文件

简要说明摘要

git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <path>…​

说明说明

通过递归式删除未在版本控制下的文件来清除工作树,从当前目录开始.

通常, 只有 Git 未知的文件才会被删除, 但是如果-x选项被指定,被忽略的文件也会被删除。例如,这可以用于删除所有构建产品。

任何可选的或可选的<path>...给出了参数,只有这些路径受到影响。


步骤1是用-n选项 :

# Print out the list of files and directories which will be removed (dry run)
git clean -n -d

清洁步骤 -注意: 这将删除文件:

# Delete the files from the repository
git clean -f
  • 要删除目录,运行git clean -f -dgit clean -fd
  • 要删除被忽略的文件,运行git clean -f -Xgit clean -fX
  • 要删除被忽略和未丢弃的文件,请运行git clean -f -xgit clean -fx

Note案件差别X后两项命令。

如果(如果)clean.requireForce设置为您的配置中的“ true”(默认),需要指定-f否则不会真的发生任何事。

再次见git-clean需要更多信息的医生。


选项选项选项

-f, --force

如果 Git 配置变量为 clean. requireForce 不被设定为假, 除非给定, 否则 Git 配置变量为 clean.requireForce 将拒绝运行-f, -n-i.

-x

不要使用标准忽略规则,$GIT_DIR/info/exclude,但是仍然使用-e选项。这样可以删除所有未跟踪的文件, 包括构建产品。 这可以用来( 可能与 git 重设结合) 创建一个纯净的工作目录, 以测试一个干净的构建 。

-X

只删除被 Git 忽略的文件。 这也许有助于从零开始重建一切, 但保存手动创建的文件 。

-n, --dry-run

不要删除任何东西, 只显示会做什么。

-d

除未跟踪的文件外,删除未跟踪的目录。如果一个未跟踪的目录由不同的 Git 仓库管理,则默认不会删除。使用-f如果您真的想要删除此目录, 选项将两次 。

清除 Git 仓库和所有子模块

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

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

OK,OK, OK, OK, OK, OK, OK, OK, OK,OK, OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,删除删除未跟踪的自定义文件及文件夹容易使用git在命令行中,按这样做:

git clean -fd

双检查在这样做之前, 它会删除文件和文件夹, 而不创建任何历史...

在本案中-f代表武力和-d代表目录...

所以,如果只删除文件,您可以使用-f仅 :

git clean -f

如果您想要删除删除(目录) 和文件, 您只能删除未跟踪的目录和文件 :

git clean -fd

还有,你也可以用-x添加被 git 忽略的文件。 如果您想要删除所有文件, 这将很有帮助 。

并添加-igit 请求您逐个删除文件的许可 。

如果您不确定并想要先检查事项,请添加-n旗帜。

使用使用-q如果您不想在成功删除后看到任何报告。

我还创造了下面的图像 让它更令人难忘 尤其是我见过很多人混淆-f有时是用来清理文件夹或把它混为一谈的!


deleting unwanted untracked files and folder

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

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

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

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

-d包括目录。


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

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