Синхронизация БД должна соответствовать коды который замыслил программист. Миграция - способ версионирования бд. Каждая миграция - это аналог коммита в гит. Думаешь про одно состояние структуры, а по факту там уже другое.
Code style для миграций:
Отлуп:
! Что бы проверить корректность работы пишутся тесты. ! Если несколько модулей будут создавать одинаковые таблицы (колонки), миграции должны падать.
Проблема:
Как в доктрине. Генерация реальных файлов с миграциями на основе диффа модели и состояния БД. Делало слепок и создавало актуальную миграцию