 <p>In case of conflict you should select the higher number of the two. But whatever you choose it has no impact on actual migrations. </p> <p>If you choose the lower number then next time you run <code>rake db:migrate</code> it will change this number (to the higher one) and you will have a change in your <code>schema.rb</code> and no migration. It's not a problem - only your commit will be a bit strange.</p> <p>Rails rake task runs all migrations that it finds and that don't have a value in <code>schema_migrations</code> table. And then it takes the highest migration timestamp and puts this timestamp into the <code>schema.rb</code>. The whole migration idea is not based on some "most recent timestamp" (schema version) but it's based on the content of <code>schema_migrations</code> table that contains all migration timestamps that it has already run. So through this table it guarantees that no migration is skipped.</p>