Generate a migration file from schema.rb Generate a migration file from schema.rb ruby ruby

Generate a migration file from schema.rb


You could copy and paste schema.rb into a migration and back-date it (e.g. change the date) so that no existing databases will run it. After you create this migration you can delete all your old migrations.

I disagree with Andrew that you should never delete migrations. Migrations break unexpectedly all the time based on model classes changing and it is very non-trivial to fix them. Since I'm sure you are using version control, you can always look back in the history if you need them for reference.


There's no need to do this. For new installations you should be running rake db:schema:load, not rake db:migrate, this will load the schema into the database, which is faster than running all the migrations.

You should never delete migrations, and certainly not combine them. As for accidentally deleting one, you should be using a version control system, such as Git.