Предполагается, что файл .env различен в разных средах, поэтому его не следует фиксировать в репозитории с исходным кодом (для Git это будет означать .gitignore).
Например, у вас будет config.env
на производстве с этим:
DB_NAME=prod_db
А по разработке вот так:
DB_NAME=dev_db
В обеих средах файлы будут иметь имя config.env
и будут находиться в одном месте, чтобы код считывал правильный файл.
В моем проекте подтвержденный файл называется config.env.sample
, который содержит все необходимые значения, чтобы разработчики знали, что им нужно добавить в config.env в своей среде:
# config.env.sample
# Sample configuration file for Project XYZ
# Name of the database
DB_NAME=dev_db
Вот дополнительная информация из FAQ :
Должен ли я зафиксировать мой файл .env?
Нет. Мы настоятельно не рекомендуем передавать ваш файл .env в систему контроля версий. Он должен включать только специфические для среды значения, такие как пароли базы данных или ключи API. Ваша производственная база данных должна иметь пароль, отличный от вашей базы данных разработки.
Должен ли я иметь несколько файлов .env?
Нет. Мы настоятельно не рекомендуем иметь "основной" файл .env и файл "environment" .env, например .env.test. Конфигурация должна отличаться в зависимости от развертывания, и вы не должны делиться значениями между средами.