`git ls-files --others --exclude-standard`不输出git不能跟踪的文件,这是什么问题?

时间:2019-01-30 10:03:38

标签: git

我的系统是带有git 1.8.3的centos 7.4

当我要列出git不能跟踪的所有文件时:

[root@localhost www]# git ls-files --others --exclude-standard
[root@localhost www]# git status
# On branch test
nothing to commit, working directory clean

似乎没有什么是不可追踪的。

然后我运行git clean -fdxn,输出如下:
[root @ localhost www]#git clean -fdxn

Would remove cms/template/
Would remove cms/tool/feedback/temp/
Would remove cms/update/
Would remove html/
Would remove images/
Would remove index.html
Would remove nbproject/
Would remove admin/application/config/config.php
Would remove welcome.html

我们可以看到许多未跟踪的文件夹和文件。
没错,因为这些文件夹和文件已列在.gitignore中。

我很困惑。
例如,welcome.htmlgit clean -fdxn的输出,这意味着welcome.html没有被跟踪。
为什么git ls-files --others --exclude-standard不输出welcome.html

1 个答案:

答案 0 :(得分:1)

git ls-files --others --exclude-standard不输出任何文件,因为不存在未跟踪且未被忽略的文件。添加与.gitignore中的任何模式都不对应的文件,然后重试-该文件将在输出中。

要查看所有未跟踪的文件(包括已忽略的文件),请运行简单的git ls-files --others