Utilizziamo TeamCity per l'integrazione continua e stiamo costruendo le nostre versioni tramite il file di soluzione (.sln). Ho usato Makefile in passato per vari sistemi, ma mai msbuild (che ho sentito è un po 'come Makefile + XML mashup). Ho visto molti post su come usare msbuild direttamente invece dei file della soluzione, ma non vedo una risposta molto chiara su perché per farlo.
Quindi, perché dovremmo preoccuparci di migrare dai file di soluzione a un makefile di MSBuild? Abbiamo un paio di versioni che differiscono da un #define (build featurized) ma per la maggior parte tutto funziona.
La preoccupazione più grande è che ora dovremmo mantenere due sistemi quando aggiungiamo progetti / codice sorgente.
UPDATE:
La gente può far luce sul ciclo di vita e sull'interazione dei seguenti tre componenti?
- Il file .sln di Visual Studio
- I molti file .csproj a livello di progetto (che capisco un "sub" script di msbuild)
- Lo script msbuild personalizzato
È sicuro dire che .sln e .csproj sono consumati / gestiti come al solito dalla GUI di Visual Studio IDE mentre lo script di msbuild personalizzato è scritto a mano e di solito consuma il file esistente .csproj "as-is "? Questo è un modo che posso vedere per ridurre la sovrapposizione / duplicazione nella manutenzione ...
Gradirei un po 'di luce su questo dall'esperienza operativa di altre persone