Как обеспечить консистентность базы данных при переходе между ветками git?

Есть проект, в котором используется миграция базы данных (а где не используется? ;)).
Подскажите, как (с помощью чего) обеспечить правильную структуру тестовой БД при любом git checkout?
Понятно, что вопрос не связан с миграцией как с таковой потому, что делать migrate:rollback нельзя - могут удалиться какие-то столбцы и при возврате они не будут заполнены информацией.
Как лучше поступить?
  • Вопрос задан
  • 1782 просмотра
Решения вопроса 1
DarkRaven
@DarkRaven
разработка программного обеспечения
Мне кажется, проще всего вам использовать docker/vagrant/и/п, т.е. виртуальное окружение.
Вы вытягиваете ветку, стартуете под нее виртуалку, там разворачивается база, сидится, накатываются нужные миграции и вы спокойно работаете дальше. Примерно так.

Советую глянуть в это сторону.

В противном случае, вы либо будете тратить много времени на приведение БД к нужному виду, либо наплодите на dev-машине кучу баз под соответствующие ветки - что тоже так себе решение.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@cicatrix
было бы большой ошибкой думать
В Entity Framework можно управлять миграциями и как следствие - версионировать базу данных.
Правда, прикрутить её к уже готовому проекту - отдельная песня.
Ответ написан
RuJet
@RuJet
В Drupal 7 можно сделать /update.php и накатятся изменения в структуре БД. Правда не все и не всегда :)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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