Una buena manera de realizar un seguimiento de los cambios de esquema en varias ramas de un proyecto de desarrollo sería seguir un refactorización de base de datos proceso. Entre otros beneficios, este tipo de proceso incorpora el uso de secuencias de comandos delta y de migración para aplicar cambios de esquema a cada entorno (o rama en su caso). La configuración podría verse así:
main
src <-- ASP.NET project source
db <-- Database create scripts
delta <-- Database change scripts (SQL delta files)
branch
src
db <-- usually has the same contents as the copy in main branch
delta <-- only the changes necessary for this branch
Cada vez que necesita cambiar el esquema de la base de datos para una rama en particular, crea un script delta de SQL que se usa para aplicar el cambio. Para hacerlo más fácil, sugeriría nombrar cada archivo de script para incluir la fecha y la hora de creación para mantenerlos en secuencia. Ejemplo sería:
201102231435_addcolumn.sql
201102231447_addconstraint.sql
201103010845_anotherchange.sql
Agregue los archivos delta al control de código fuente en la rama donde se debe realizar el cambio de esquema. Debería terminar con cada rama que contenga exactamente lo que se necesita para cambiar la base de datos correspondiente. Es posible que sea necesario modificar algunos detalles para su situación dependiendo de cosas como su esquema de bifurcación y si su base de datos se conserva o no durante su proceso de lanzamiento (en lugar de volver a crearla).
Finalmente, para tratar de simplificar estos conceptos, recomendaría una herramienta para ayudar a administrar el proceso. Mi sugerencia es echar un vistazo a DBDeploy / DBDeploy.NET . Lo he estado usando felizmente durante años en todos mis proyectos.