Спасибо, в общем как я себе это вижу:
- Создаем .env.example с переменными которые используются на prod;
- Далее каждый разработчик запускает миграции (структура тестово-локальной БД = prod);
- После генерит seeders (на faker данных), и наполняет локальную БД;
- Пишет код, unit-тесты, потом migrations + seeder'ы под новые колонки/таблицы в БД (если нужно) и делает integration-тесты, а после уже отправляет все на Github* (+ ci/cd пайплайны);
- В результате я лишь получаю код bussiness-логики в репозитории и ставлю approve на pull-request'ах новых фич в master (либо staging, а после если все ОК - из staging в master);