Nel mio progetto abbiamo un modello di filiale che ha un ramo di sviluppo separato e ha un ramo separato per ogni versione. Potrebbe assomigliare a questo:
dev ______ ______
/ \ / \
master --+---+----+---+---+----+----+--- (...)
r1 \______/ r2 \_______/
Quindi sviluppiamo su dev lo uniamo a master e poi creiamo un ramo di rilascio (r1, r2, ...).
Vogliamo utilizzare le migrazioni EF 6 (manuali non automatiche) ma abbiamo una domanda a cui non sappiamo come rispondere.
Immagina questo:
dev _(1)__ ____(4)
/ \ / \
master --+---+----+---+---+----+-(5)*-+--- (...)
r1 \_(2)__/ r2 \(3)______/
Ogni numero è una migrazione. Sono stati aggiunti al controllo sorgente su ciascun ramo E sono stati applicati ai database delle istanze di produzione del nostro progetto (supportiamo più versioni per un po 'di tempo solo per le correzioni), quindi non possiamo eseguirne il downgrade, possono andare solo su (). Asterisk segna il punto nel tempo che vogliamo analizzare. Vogliamo che le migrazioni funzionino in questo modo:
Inoltre:
Può essere fatto? Se sì, come?
Se hai bisogno di maggiori dettagli, per favore chiedi.
Potrei provare a spiegare cosa puoi fare in ogni caso, ma è piuttosto complesso e non sarei in grado di spiegarlo così come è spiegato qui:
Code First Migrations in Team Ambienti
Anche se è complesso e dovrai fare spesso riferimento a questo documento per unire i rami, se segui questo documento vedrai che risolve tutte le tue domande.
Disclaimer: So che SO dovrebbe essere autonomo, ma la spiegazione è così complessa e lunga che non riesco nemmeno ad aggiungere un abstract qui. Spero che i documenti MSDN collegati non scompaiano.