Sembra un lavoro per l'integrazione continua. Se hai solo un compagno di squadra questo non è necessario (presumo che si tratti di un refuso). Se hai un solo compagno di squadra dovresti unire ogni volta che tiri le sue modifiche. Ciò non richiederà troppo tempo a meno che tu non stia scrivendo lo stesso codice per tutto il tempo, il che è una pessima idea per cominciare.
Con più membri del team puoi utilizzare una soluzione di integrazione continua come
Link a TeamCity
O
CruiseControl. Net: link
Lascia che il server CI estrae e modifichi costantemente le modifiche nei repository e esegui alcuni test per assicurarti che le modifiche funzionino correttamente. Questo richiede ancora di unire tutte le volte che si effettuano le modifiche, che è il modo migliore.
Più a lungo mantieni separati i due rami di sviluppo, più dolorosa sarà l'unione. Pertanto dovresti concentrarti sulla creazione costante, sulla fusione e sul test come flusso di lavoro . Il server CI potrebbe avere IIS ed è possibile testare il prodotto finale lì prima che vada in produzione.
Ovviamente se hai una base di codice che è facilmente rotta da cambiamenti, la tua vita sarà difficile qualunque cosa tu faccia. In tal caso dovresti concentrarti sul refactoring.
I tuoi utenti non dovrebbero mai testare singole filiali, dovrebbero testare il risultato finale unito dei rami che andranno in produzione.