git clean不能递归地工作

Ank*_*ita 25 git

我遇到了问题git clean.考虑以下场景

git status -su
?? file_1
?? xyz/file_2

git clean -f
Not removing xyz/file_2
Removing file_1
Run Code Online (Sandbox Code Playgroud)

我不想删除xyz文件夹,但想删除file_2里面的文件夹.为什么git clean不递归工作?

man*_*lds 44

如果您忽略它,请使用git clean -xf.你可以这样做,git clean -xdf但也会删除未跟踪的目录.使用-n的干式运行.

http://gitready.com/beginner/2009/01/16/cleaning-up-untracked-files.html


小智 13

此外,git clean不能处理目录树.考虑一下你

> git status
Untracked files:
  ../file1.orig
  ../../file2.orig
Run Code Online (Sandbox Code Playgroud)

git clean -df在这种状态下什么都不做.你必须'cd'进入项目根目录并再次运行'git clean -df'.


mar*_*rio 7

试试这个:

git clean -xdf
Run Code Online (Sandbox Code Playgroud)

如果有效,请告诉我.


Nou*_*him 0

xyz也许您的文件中的某处有该目录.gitignore-x您可以使用切换到 来覆盖此行为clean。另外,如果xyz目录未被跟踪(其中没有任何内容被跟踪),则除非您传递该选项,否则它不会被删除-d