TFS с разными папками для разных проектов - PullRequest
2 голосов
/ 04 июня 2010

У меня есть решение с проектами Silverlight, парой веб-приложений и некоторыми службами Windows и их небольшими тестовыми приложениями Winforms.

При сборке с использованием TFS все двоичные файлы помещаются в папку Binaries. Он также создает папку _PublishedWebsites, куда он помещает веб-приложения, готовые к развертыванию.

Я хотел бы, чтобы несколько проектов имели свои выходные данные в отдельном каталоге в папке Binaries. Я хочу, чтобы файлы, которые я обычно находил в папке bin\Release, были там.

Я долго и трудно, и мог только найти дефицитный документацию о том, как добиться того, чтобы и только для TFS 2008. Там хорошая статья есть текст ссылки и еще одна запись для VS 2010 там текст ссылки . Тем не менее, ни одна из этих работ: - (

Кажется, что сборка игнорирует свойство <OutputPath>. Я попытался поиграться со свойством <AfterBuild>, но, к сожалению, если я использую свойство $(OutDir), я получу ВСЕ файлы в каталоге Binaries, а не только те, которые только что были скомпилированы.

В данный момент я настраиваю отдельную сборку, в которой собраны только те проекты, которые меня интересуют, и которые мне бы очень хотелось, чтобы все файлы, необходимые для выпуска, были собраны сразу.

РЕДАКТИРОВАТЬ: Я не достаточно ясно, но я использую последнюю версию TFS (TFS 2010 RTM). Я настроил <OutputPathDir> на уровне проекта, как описано в приведенных мною ссылках.

Приветствие.

1 Ответ

1 голос
/ 04 июня 2010

В вашем файле определения сборки (.proj) проверьте, что

<Project>
  <PropertyGroup>
      <CustomizableOutDir>true</CustomizableOutDir>
  </PropertyGroup>
</Project>

Кроме того, вы можете столкнуться с некоторыми проблемами, если пытаетесь скомпилировать проект, который когда-то был «веб-сайта» (созданный из File-> New-> Website-> ASP.NET Webiste). Кажется, они каждый раз перезаписывают каталог вывода. Вместо этого нам пришлось преобразовать некоторые из них в библиотеки классов.

...