我已将vendor文件夹添加到我的.gitignore文件中,但是每当我执行git状态时,它都会显示我修改了vendor文件夹。 下面是我为了将代码推送到我的存储库而遵循的步骤: -
步骤1)创建包含以下内容的.gitignore文件。
.idea/*
log/*
tmp/*
步骤2)将gitignore文件推送到存储库
git add .
git commit -m "test"
git push origin master
步骤3)创建包含供应商文件夹的新项目。
步骤4)将包含vendor文件夹的项目推送到存储库。
git add .
git commit -m "test"
git push origin master
步骤5)修改.gitignore文件以忽略供应商文件夹。
.idea/*
log/*
tmp/*
vendor/bundle/*
vendor/cache/*
vendor/plugins/*
但无论我在哪里做git状态,都会显示: -
"modified: vendor/bundle/ruby/1.9.1/bundler/gems/jquery-rails-f79e8f178"
即使供应商文件夹位于.gitignore文件中。
答案 0 :(得分:7)
.gitignore
只会导致忽略新的未跟踪文件。如果文件已经添加到存储库,就像本例中vendor
目录中的文件一样,它们仍会被跟踪。
您必须从存储库中删除供应商文件,并将其添加到.gitignore
。这可以使用git rm --cached <file>
来完成,这将从存储库中删除<file>
,但不会将其从工作副本中删除。
下次您推送遥控器时,您将以此方式删除的文件将从遥控器中删除。
答案 1 :(得分:-2)
您正在以错误的方式添加供应商目录。尝试下面的一个。
/log/*.log
/tmp
/vendor