我刚刚开始使用django学习后端开发。我的问题是我是否只提交服务器文件夹中的项目文件,还是应该将.env
文件夹提交到存储库?
我已经执行以下操作:
config.json
来保护我的API密钥。.gitignore
中包含了同样的内容。如果我不做.env
,会发生什么?
答案 0 :(得分:3)
假设您的.env
文件夹是您的虚拟环境,否,您不应该提交它。
应该使用requirements.txt
文件在服务器上重建虚拟环境。您在开发计算机上构建的本地环境可能具有特定于操作系统的二进制文件,以及为您的本地环境生成的其他已编译代码。
服务器将具有不同的编译二进制文件,因此应使用pip install -r requirements.txt
重建虚拟环境。
答案 1 :(得分:0)
由于env代表环境,因此您不应在git repo中提交/包含.env
文件。您将为您的LOCAL,STAGING(开发),PRODUCTION环境使用不同的环境变量。
即您的LOCAL .env文件可能具有类似
的内容WEB_HOST=localhost
WEB_PORT=8000
ALLOWED_HOSTS=127.0.0.1, localhost
但是您的PRODUCTION .env会有类似的东西
WEB_HOST=www.mysite.com
WEB_PORT=8080
ALLOWED_HOSTS=www.mysite.com
这就是为什么您不能在仓库中包含.env的原因,应该根据环境来创建它。