En realidad no es así: Microsoft dice que la mejor manera de manejar las referencias es construir su proyecto en una gran solución. Sí, lo sé, realmente lo dicen en serio también.
El equipo de patrones y prácticas ha reunido sus mejores prácticas con respecto a TFS, pero se aplica a las compilaciones generales. Hay 3 tipos de configuración de la solución, la "1 gran solución", un enfoque particionado que se parece mucho a la forma en que la mayoría de la gente solía administrar las compilaciones construyendo a su vez y copiando artefactos en un directorio común (que no es ayudado por .NET no tener una ruta de referencia 'incluir' o 'biblioteca' en todo el servidor), y una configuración de Solución Múltiple que es una versión más compleja de la Particionada.
Ellos dicen
In general you should:
Use a single solution strategy unless the resulting solution is too large to load into Visual Studio.
Use multiple solutions to create specific views on sub-systems of your application.
Use multiple solutions to reduce the time it takes to load a solution and to reduce build time for developers.
Para TFS, recomiendan bifurcar cualquier proyecto externo dentro de su proyecto, en lugar de confiar en el mapeo del espacio de trabajo que es más similar a los externos de Subversion. Personalmente, creo que su consejo no es la mejor práctica, pero supongo que están tratando de minimizar los problemas de compilación que obtendrás al usar referencias.
He tenido problemas con las compilaciones de .NET que intentan atajar el sistema compilando solo lo que se necesita, una compilación nocturna que hace todo, y copiar cada nuevo ensamblado en un directorio fue la mejor manera para que todos se mantuvieran sincronizados, especialmente los probadores. Tenga en cuenta que esto realmente solo se aplica a las aplicaciones .NET, las de C ++ tienden a funcionar porque no tienen ensamblados versionados o aspectos similares que pueden causar problemas al llamar a los componentes. Este enfoque funciona bien, pero no siempre se puede suponer que las construcciones parciales están bien, vapear todo y reconstruir es lo más seguro.