Nejjednodušší odpovědí je nepokoušet se o to. Místo toho nechte migrace Alembic reprezentovat úplné rozložení databáze. Pak budou veškeré migrace, které provedete, založeny na změnách ve stávající databázi.
Chcete-li provést počáteční migraci, pokud již máte databázi, dočasně přejděte na prázdnou databázi a spusťte alembic revision --autogenerate -m "base"
. Poté ukažte zpět na skutečnou databázi a spusťte alembic stamp head
říci, že aktuální stav databáze je reprezentován nejnovější migrací, aniž by byla skutečně spuštěna.
Pokud to z nějakého důvodu nechcete, můžete se rozhodnout nepoužívat --autogenerate
a místo toho vygenerujte prázdné revize, které vyplníte operacemi, které chcete. Alembic vám v tom nezabrání, je to jen mnohem méně pohodlné.