Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git状态不显示新添加文件夹的内容_Git - Fatal编程技术网

git状态不显示新添加文件夹的内容

git状态不显示新添加文件夹的内容,git,Git,我刚刚在/创建了一个新的git repo,我在文件夹test\u fold中创建了一个新文件test.txt,因此文件的路径是test\u fold\test.txt。然后运行git status。这是输出,它查找文件夹而不是文件。为什么不告诉我在test\u fold中有一个新文件 $ git status On branch master Initial commit Untracked files: (use "git add <file>..." to include

我刚刚在
/
创建了一个新的git repo,我在文件夹
test\u fold
中创建了一个新文件
test.txt
,因此文件的路径是
test\u fold\test.txt
。然后运行
git status
。这是输出,它查找文件夹而不是文件。为什么不告诉我在
test\u fold
中有一个新文件

$ git status
On branch master

Initial commit

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        .gitignore
        test_fold/

nothing added to commit but untracked files present (use "git add" to track)
$git状态
论分行行长
初始提交
未跟踪的文件:
(使用“git add…”包含在将提交的内容中)
.gitignore
测试折叠/
提交时未添加任何内容,但存在未跟踪的文件(使用“git add”跟踪)

.gitignore
文件为空。

如果文件夹尚未包含跟踪路径,Git将忽略文件夹的上下文。通过
test\u fold/
的存在,您知道其中有文件(Git永远不会将空目录显示为未跟踪),并且您知道这些文件不会被跟踪

否则,将文件夹解压缩到存储库中可能会引入大量来自
git status
的输出。简单显示顶级未跟踪路径的默认行为会使输出更加理智

如果希望Git显示文件夹的内容,请使用

$ git status -uall

这将向您显示
test\u fold/test.txt
(以及任何其他文件),而不仅仅是
test\u fold/

,据我所知,您必须向空文件夹添加一些占位符,以便与git同步。这就是git在目录不包含任何跟踪文件时显示未跟踪文件的方式。在目录中添加至少一个文件后,
git status
将显示文件夹中的各个文件。@克里斯,所以一旦添加目录,git将扫描目录的内容?@Vader,是的。您可以
git add test\u fold/test.txt
添加该特定文件,或者
git add test\u fold
添加目录中的所有文件。在这种情况下,它相当于相同的事情。请注意,Git根本不跟踪目录,因此,如果您在一个空文件夹中尝试此操作,则不会添加任何内容。@Chris感谢您的帮助。它实际上不在我的根文件夹中,重要的是相对路径。您说过了吗否则,将文件夹解压缩到存储库的根目录中可能会导致git状态的大量输出“但我的回购协议实际上并不存在root@Vader解压存储库中任何位置的文件夹与将其解压到根目录中完全相同。关键是,如果所有目录的内容都未被跟踪,Git没有理由向您显示目录的内容。