Нужно ли фиксировать файлы .env в хранилище? - PullRequest
0 голосов
/ 26 июня 2019

Я только начал изучать бэкэнд dev, используя django.Мой вопрос заключается в том, чтобы просто зафиксировать файлы проекта только в папке на сервере или я должен также зафиксировать папку .env в хранилище?

Я сделал следующее:

  1. Я создал виртуальную среду и я также установил django в venv.
  2. У меня настроен сервер django и супер администратор.
  3. У меня настроен config.json для защиты моего ключа API.
  4. В том же ключе .gitignore.

Что произойдет, если я сделаю или не совершу .env?

Ответы [ 2 ]

3 голосов
/ 26 июня 2019

Предполагая, что ваша папка .env является вашей виртуальной средой, нет, вы не должны фиксировать ее .

Виртуальная среда должна быть перестроена на сервере с использованием файла requirements.txt. Локальная среда, которую вы создали на своей машине разработки, может иметь специфичные для операционной системы двоичные файлы и другой скомпилированный код, созданный для вашей локальной среды.

Сервер будет иметь разные скомпилированные двоичные файлы, и поэтому он должен перестраивать виртуальную среду, используя: pip install -r requirements.txt.

0 голосов
/ 26 июня 2019

Вы не должны фиксировать / включать ваш файл .env в ваш репозиторий git, потому что env означает среду. У вас будут разные переменные среды для ваших локальных, STAGING (разработка), производственных сред.

т.е. ваш локальный файл .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 в репозиторий, и его следует создавать в зависимости от среды.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...