Используйте пакет вроде dotenv . dotenv и его варианты, вероятно, существуют для любого языка, который вы используете.
По сути, вы хотите использовать переменные окружения вместо жестких значений кода в вашем коде. Итак, вместо того, чтобы писать что-то вроде этого:
my_database_connect('my_username', 'abc123')
Вы бы написали:
my_database_connect(process.env.DB_USERNAME, process.env.DB_PASSWORD)
В Heroku эти переменные среды уже будут установлены на вкладке "config" вашего приложения. Затем для локальной разработки вы создадите файл с именем .env
и в нем будет следующий текст:
DB_USERNAME=my_username
DB_PASSWORD=abc123
Не фиксируйте .env
в вашем git-репозитории - он должен жить только на вашей машине, где вы разрабатываете. Теперь ваш код будет работать как локально, так и в Heroku, и подключаться к соответствующей базе данных в зависимости от среды, в которой он работает.
Вот статья, которая более подробно объясняет это для node.js, хотя в основном это лучший метод для общего развития: https://medium.com/@rafaelvidaurre/managing-environment-variables-in-node-js-2cb45a55195f