Profiling feature for SQL Server 2012
If you are using Developer or Enterprise Edition, you can use Database Snapshots to get you most of the way.  Basically, this allows you to make virtual "copies" of your database and apply your object changes.  You will still need to change your connection string, but it could give you an easy to maintain alternative for standing up your alternate database branches.

Regardless of how you approach this, you will need to have some different database name and/or instance name for your database.  Data and databases are stateful in nature, so simply swapping structures in and out isn't an option.  After all, you can't just turn off columns and the data they contain.  You have some options for disabling objects, like indexes and triggers.  But beyond that, you can't just switch data "off".