Git, сайт local + remote + файл настроек

Помогите понять решение ситуации:

Есть продакшн сервер, есть локальная машина.
На локальной машине стоит AMP, на котором тестится сайт.
Используется git для пуша на продакшн.

На сайте есть файл настроек Settings.php, в котором прописаны в том числе коннекты к БД.
Соответственно — для локальной машины одни, для продакшна — другие.
Сам файл настроек кроме доступа к БД содержит еще кучу настроек которая часто меняется.

Как правильно решить в Git задачку такую, что бы локально одни данные для БД, и локально тестить при разработке, а в продакшн — другие?
  • Вопрос задан
  • 2763 просмотра
Решения вопроса 1
frol
@frol
Линуксоид
Не знаю best practice для PHP, но в Python делаю так: в settings импортируют файл local_settings и файл local_settings добавляется в .gitignore
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
ataraev
@ataraev
Ruby, Go
Разбить конфигурацию на несколько файлов и файл настройки базы в игнор.
Ответ написан
Комментировать
Реализовать наследование настроек. Например, в settings.php инклудить settings_default.php и переписывать локальные настройки. settings.php в .gitignore занести.
Ответ написан
Комментировать
deadkrolik
@deadkrolik
Можно написать хук который подставляет нужный файл конфигурации после push. Это совсем не сложно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы