DEV Community

Dev Encyclopedia
Dev Encyclopedia

Posted on • Originally published at devencyclopedia.com

Drizzle ORM Migrations: push vs migrate (and what actually belongs in production)

Drizzle ORM migrations confuse a lot of developers.

Not because the tool is complicated but because push and migrate look similar and do very different things.

drizzle-kit push → syncs your DB directly. No files. No history. Great for local dev, dangerous in production.

drizzle-kit generate + migrate → creates SQL files you can review, commit, and track. This is what production needs.

We wrote a full guide covering:

  • push vs migrate (and when to use each)
  • drizzle-kit config for PostgreSQL and Turso/libSQL
  • the .env.local gotcha that breaks most setups
  • handling migration conflicts in a team
  • reverting migrations without breaking history

This is the exact workflow we use for devEncyclopedia's own Turso database.

👉 Read the full guide on devEncyclopedia

Top comments (0)