You can follow these steps to generate the initial migration without resetting your database.
mkdir -p prisma/migrations/init
npx prisma migrate diff --from-empty --to-schema-datamodel prisma/schema.prisma --script > prisma/migrations/init/migration.sql
npx prisma migrate resolve --applied init
npx prisma migrate dev # it should say everything is in sync
Answer from Nurul Sundarani on Stack Overflow`npx prisma migrate dev --name init` fails in starter project
Where do you actually run prisma migrate deploy?
npx prisma migrate dev --name init from tutorial not working
Command `npx prisma migrate dev` failing with no error messages
I'm working on a little project with supabase and prisma, I've just been using one dev database which I update with prisma migrate dev. For production migrations, you're supposed to use prisma migrate deploy, which the prisma docs say to put in a CI/CD pipeline.
-
I don't have a CI/CD pipeline
-
I can't run it locally from my project directory, cause prisma uses the
DATABASE_URLenvironment, which is pointing to my dev database
So I'm wondering where y'all would actually run prisma migrate deploy from? Should I just bite the bullet and learn some github actions? Or is there an easier way?
EDIT: The prisma docs recommend using dotenv-cli to use switch between .env files, but I'm kinda worried that I might fuck up somehow and end up running prisma migrate reset on my prod database, and delete everything. But, seems like that might be my plan until I figure out some CI/CD stuff.
Still definitely open to any advice though!