@webology hmm, that is a tricky situation and I've found myself there a few times.
I feel like it might need a third source of information, like a schema that remembers database shape/state. Then, when you switch branches, you could do a `dbdiff` or something to get the differences between schema and database? I'm sure there's a ton I'm simplifying and leaving out, of course.
Well, wait (lol, you get train of thought), you _should_ be able to reconstruct the shape of the database purely from the migrations. So shape that db in memory, then compare to the actual database shape. Produce a diff and then :magic: and you run the correct SQL commands to match the database to the migrations.