Я помещаю большую базу кода в Team Foundation Server. Я хотел бы, чтобы процесс сборки создавал сборку "готовых к развертыванию" наших проектов.
Обычный способ, которым мы это выполняем, состоит в том, чтобы каждый выход проекта находился в своей собственной папке. Так, например, мы завершаем что-то вроде
C:\project1\
assembly1.dll
assembly2.dll
project1.exe
project1.exe.config
C:\project2\
assembly2.dll
assembly3.dll
project2.exe
project2.exe.config
C:\project3\
assembly1.dll
assembly3.dll
project3.exe
project3.exe.config
Каким образом нам это нравится.
TFS, однако, похоже, хочет вставить все в один каталог.
C:\output\
assembly1.dll
assembly2.dll
assembly3.dll
project1.exe
project1.exe.config
project2.exe
project2.exe.config
project3.exe
project3.exe.config
который, хотя и сохраняет некоторый объем дискового пространства (сборки существуют только один раз каждый), не так, как мы этого хотим.
Какой лучший способ указать, где TFS/MSBuild должен поместить выходные файлы? Нужно ли мне редактировать файлы sln/csproj индивидуально для достижения этого или я могу сделать это в файле TFSBuild.proj? (то есть в файле MSBuild)