在我的laravel应用程序中的本地服务器上我有.env文件。
将更改推送到我使用的服务器
git add .
git commit -m "something"
git push heroku master
但是当我在克隆的应用中使用heroku git:clone -a myapp
时,没有 .env 文件......只有 .env.development 文件。
我做错了吗?
答案 0 :(得分:4)
检查.gitignore
文件(如果有)。如果您的git repo是自动设置的,或者是从另一个项目导入的,则默认情况下可能会忽略它。
如果它在那里,那么只需删除它以在下次提交时包含.env
文件。
答案 1 :(得分:2)
Laravel默认忽略.env
- 这是非常有意义的,因为您的不同环境在技术上应该具有不同的env
文件。它还可以帮助您不将凭据(例如数据库)提交到版本控制中。
我建议你继续遵循这个预期的做法,并研究使用heroku配置变量: https://devcenter.heroku.com/articles/config-vars
答案 2 :(得分:1)
在根文件夹上打开文件文本.gitignore
,git会跳过.gitignore
中的文件和文件夹。您只需删除所有文本。然后查看git status。
答案 3 :(得分:0)
确保周围没有空格" ="在您的环境文件.env
中。现在尝试推动它。
运行heroku config:push --overwrite
,因为默认情况下它不会覆盖现有变量。
如果问题仍然存在,请尝试以下heroku-config:它提供了一种推送/拉动Heroku环境以便在本地使用的方法。