Symfony 5.3项目中.gitignore无法忽略.env.local文件如何解决?
问题核心原因
.gitignore 规则仅对从未被Git追踪过的文件生效,你遇到的.env.local 无法被忽略,大概率是该文件之前已经被提交到版本库、处于Git的追踪状态中,因此新增的忽略规则不会对它生效。
解决步骤
- 首先确认文件是否处于被追踪状态,在项目根目录执行命令:
git ls-files --error-unmatch .env.local
若输出包含.env.local文件名,即可确认该文件已被追踪。 - 执行命令将该文件从Git的追踪列表中移除,不会删除你本地的实际文件:
git rm --cached .env.local - 检查你的
.gitignore规则是否匹配文件位置:
你当前配置的/.env.local仅会忽略项目根目录下的.env.local文件,如果你要忽略项目所有层级目录下的同名文件,将规则修改为.env.local即可。 - 最后提交修改到版本库即可:
git add .gitignore git commit -m "调整忽略规则,移除已追踪的本地.env.local文件"
团队协作注意事项
其他团队成员拉取本次提交后,也需要在本地执行一次git rm --cached .env.local,避免本地的该文件仍处于追踪状态被误提交。
内容的提问来源于stack exchange,提问作者Farnoosh
相关产品推荐
相关产品推荐

