Sie müssen Ihre alten Migrationsdateien in einer Rails-App nicht beibehalten, da Ihr Datenbankschema entweder in schema.rb oder in einer entsprechenden SQL-Datei erfasst werden muss, die zum Generieren Ihres Schemas verwendet werden kann.
Migrationen sind nicht die autorisierende Quelle für Ihr Datenbankschema. Diese Rolle gehört entweder zu db/schema.rb oder zu einer SQL-Datei, die Active Record durch Untersuchung der Datenbank generiert. Sie sind nicht zum Bearbeiten gedacht, sie repräsentieren nur den aktuellen Zustand der Datenbank.
Es besteht keine Notwendigkeit (und es ist fehleranfällig), eine neue Instanz einer App bereitzustellen, indem der gesamte Migrationsverlauf erneut wiedergegeben wird. Es ist viel einfacher und schneller, nur eine Beschreibung des aktuellen Schemas, das sich in schema.rb oder der SQL-Datei befindet, in die Datenbank zu laden.
Diese Datei sollte versioniert und in der Quellcodeverwaltung beibehalten werden.
Um die automatische Generierung von schema.rb einzurichten, ändern Sie config/application.rb durch die Einstellung , die wie folgt aussehen kann: ruby oder: sql. Wenn: ruby ausgewählt ist, wird das Schema in db/schema.rb gespeichert. Wenn: sql ausgewählt ist, wird das Schema im nativen SQL-Format Ihrer Datenbank ausgegeben.
möglich Duplikat [Ist es eine gute Idee, alte Rails Migration Dateien zu bereinigen ?] (http://stackoverflow.com/questions/4248682/is-it-a-good-idea-to-purge-old-rails-migration-files) – brainimus