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


当前回答

取消完整的更改 git clean -f -d

$ git clean -f -d
Removing client/app/helpers/base64.js
Removing files/
Removing package.json.bak

where 
-f is force 
-d is a directory 

其他回答

git-clean - 从工作树中删除未追踪的文件

git clean -fd 删除目录

git clean -fX 删除被忽略的文件

git clean -fx 删除被忽略和未被忽略的文件

可以使用上述所有选项,如

清洁 -fdXx

查看 git 手册 获取更多帮助

好吧,删除不需要的未追踪文件和文件夹是容易使用 git 在命令行,只是这样做:

git clean -fd

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

所以,如果你只想删除文件,你只能使用 -f:

git clean -f

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

git clean -fd

并添加 -i 旗帜,使 git 请求您的许可,以便在行程中单独删除文件。

如果您不确定,并希望先检查事物,请添加 -n 旗帜。

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

我也创建下面的图像,使它更令人难忘,特别是我已经看到许多人混淆 -f 为清洁文件夹有时或混合它在某种程度上!


如果需要从特定子目录中删除未追踪的文件,

git clean -f {dir_path}

并结合的方式来删除未追踪的Dir/文件和被忽略的文件。

git clean -fxd {dir_path}

此后,您将仅在 git 状态中修改文件。

清除 git 存储库和所有子模块重复 以下命令将清除当前 git 存储库和所有子模块重复: (git clean -d -x -f& git submodule foreach --recursive git clean -d -x -f)