尽管该文件夹位于某个暂存文件夹中,但无法看到该文件夹

时间:2019-11-25 09:53:36

标签: git bitbucket

git的新手-我已经将bitBucket(git协议存储库)存储库克隆到了我的本地工作区中-现在它是本地存储库,然后我将文件复制到了该文件夹中。现在-当尝试使用以下命令查看所有未暂存的文件时:

git ls-files --others --exclude-standard 

我看到了一些文件夹和文件,但是没有一个特定的文件夹(src),尽管我可以在文件系统中以及在ls父文件夹中看到它。我也将.gitignore文件设置为空。 可能是什么原因呢?

2 个答案:

答案 0 :(得分:0)

git ls-files --others --exclude-standard 

不列出未暂存的文件。它会列出未跟踪的文件,并减去.gitignore中标记为“不要抱怨这些文件”的文件以及类似的排除文件。

未暂存文件是git status特有的概念。如果文件 index 1 中的文件副本与文件中的 不同,则文件{em> unstaged 在git status输出中。复制工作树中的内容。

要获取索引副本和工作树副本之间不同的文件名列表,请使用git diff(不带附加commit或--cached参数)和--name-only或{ {1}}参数,它告诉Git仅显示运行差分引擎的结果的名称(以及可选的状态字母代码)。请注意,--name-status在启用重命名检测并将其设置为50%的情况下运行引擎(这是不可配置的),而git status以您配置它的方式或通过其他命令行指定的方式运行参数。 2

(请注意,git diff在内部运行 two git status -es。第一个将git diff --name-status与索引进行比较。为此,请使用{{1} }命令,运行HEAD。这里列出的所有文件都是git diff将调用暂存的文件。)


1 术语 index 暂存区和(目前很少见)缓存均指在Git中也是如此。索引包含要在 next 提交中的每个文件的副本。根据定义,将跟踪索引中的文件,因此它们将不会出现在git diff --cached --name-status输出中。

2 请参见the git config documentation中的git status。如果尚未配置此设置,则在2.9之前的Git版本中默认值为git ls-files --others,在2.9以及更高版本中的默认值为diff.renames

答案 1 :(得分:0)

问题是我想查看以便上传的目标文件夹包含很多子目录,但是它们都为空,因此,按照定义-GIT并未将其列出为与提交相关