.gitignore 不适用于被忽略文件夹的子文件夹

.gitignore does not work for subfolder of ignored folder

我正在使用 Laravel 和 Github 程序进行颠覆。在我的 .gitignore 文件中,我输入:

/vendor

我的项目结构是这样的:

Root
 app
 bootstrap
 public
 vendor

这是我想在 git 中忽略的供应商中的所有文件。在我的 .gitignore 中输入 /vendor 可以忽略大多数文件,但有些文件不会。

不起作用的文件是autoload.php - vendor/autoload.php

vendor/composer 中的文件 - 例如:

autoload_classmap.php
autoload_namespaces.php
autoload_real.php
ClassLoader.php
installed.json

我在我的 .gitignore 文件中做错了什么?

在 git 中添加供应商文件夹后,您是否清除了 git 缓存

git rm -r --cached vendor

git add .
git commit -m ".gitignore"

这将完全删除供应商文件夹。

好的。所以我遇到了问题。我不知道如何,但是我的 .gitignore 文件将它自己推送到一个名为 .gitignore 的目录中,我刚刚删除了该目录并将文件的内容复制到 git 项目的根目录中,然后更新了它。为我工作。考虑一下:文件 .gitignore 应该在 repo 的根目录中。