Now the most common setup is to copy the production database to the staging once in a while and test migration against staging. With branching, you can test each PR against its own production database branch -- just put branch creation in your CI config. Hence, it has fewer moving parts, is a bit easier to set up, and reduces the lag between prod and staging.
Have a staging / qa env, then fork it for a branch for testing. Much faster than reseeding / restoring.
It's a great feature on heroku for branches, it shares data between review apps. Quite nice.