Php несколько дБ окружения с git & phpfog
У меня есть простое (без рамки) приложение php. Я хочу развернуть свое приложение в PhpFog. Проблема в том, что конфиг (host,dbname) отличается.
Как создать конфиг БД для среды разработки и производства?
2 ответа
Вы можете использовать переменные среды для этого. PHPFog предоставляет способ установки переменных среды в консоли приложения> Env. Вкладка переменных для вашего приложения.
Просто создайте все необходимые переменные среды как на локальном компьютере, так и на консоли приложения:
Пример:
Локальный компьютер: отредактируйте ваш .bash_profile
APP_HOST=localhost
APP_DATABASE=mydatabase
PHPfog App Console:
APP_HOST=production.mysqlserver.com
APP_DATABASE=proddatabase
Затем получите доступ к ним из вашего приложения php:
$db_host = getenv("APP_HOST");
$db_name = getenv("APP_DATABASE");
Вы можете поставить свой config.php
в вашем .gitignore
или другое решение - иметь две ветки в вашем локальном хранилище. Один, чтобы работать на месте, и один, чтобы подтолкнуть. Затем вы определяете специальную стратегию слияния:
Допустим, вы хотите исключить файл config.php
На ветке А:
Создайте файл с именем ".gitattributes" в том же каталоге, с этой строкой: config.php merge = ours. Это говорит git, какую стратегию использовать, когда mergin файл. При этом всегда сохраняйте свою версию, т.е. версия ветки, в которую вы сливаетесь.
Добавьте файл.gitattributes и зафиксируйте
На ветке B: повторите шаги 1-2
Попробуйте объединить сейчас. Ваш файл должен быть оставлен нетронутым.