Rebase Migrations is a library and command line tool to rebase Rails migrations to have the latest timestamp.
$ bundle add rebase-migrations --group=development,testTwo team members, Alice and Bob, are working on the same Rails project and both
are adding new database migrations. Alice realizes her migration depends on
Bob's, but the migration timestamps are out of order. The rebase-migration
command line tool can be used to reorder Alice's new migrations to have the
latest timestamp in the sequence.
To rebase all new migrations with respect to the main git branch:
$ bundle exec rebase-migrationsTo rebase all new migrations with respect to a different branch:
$ bundle exec rebase-migrations my-branchThe command has a --check argument that is useful for CI. To check that all
new migrations are the latest in the sequence:
$ bundle exec rebase-migrations --checkIt will exit with status code 1 if the check fails. The --check form also
accepts a branch argument.
To skip a specific migration files from the --check include _skip_rebase in
its filename.