Переменные окружения [ .env files ]

Например я ставлю библиотеку dotenv через npm или в React просто создаю переменную REACT_APP_API_KEY=key Файлы .env у нас в репозиторий мы не пушим, а приложению данные из этих файлов нужны. Каким образом такая информация передаётся другим участникам? Предположим нас несколько человека в команде. Как мне другому человеку передать данные env или как ему воспользоваться этими данными например procces.env.PORT если мы не пушим env файлы ?


Ответы (1 шт):

Автор решения: Mr. Hedgehog

Если у вас нет полного окружения, которое вы шарите между разработчиками, обычно делают так:

  1. Кладут в репозиторий файл и называют его, например .env.example. Важно что в нём не должно быть информации которую не хочется класть в репозиторий. Вся такая информация заменяется, например, на CHANGE_ME.
  2. В ридми указывается что нужно скопировать содержимое .env.example в локальный файл .env и проставить нужные значения вместо CHANGE_ME
  3. В зависимости от механизма публикации при сборке проекта для выката подкладывается нужный файл.

Поскольку в примере указана переменная REACT_APP_, я предполагаю что используется Create React App. Они поддерживают несколько файлов с переменными окружения, которые будут использваться в разных окружениях. Среди них есть .env.development.local, .env.test.local и .env.production.local. Их можно использовать чтобы для разных окружений переписывать значения из основных .env файлов.

→ Ссылка