Исключение нескольких файлов в сборке TFS - PullRequest
0 голосов
/ 20 января 2010

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

<ItemGroup>
  <FilesToCopy Include="$(BinariesRoot)\Debug\*.*" Exclude="$(BinariesRoot)\Debug\P0*.*;$(BinariesRoot)\Debug\P1*.*" />
</ItemGroup>

и

<PropertyGroup>
  <FilesToExclude>$(BinariesRoot)\Debug\P0*.*;$(BinariesRoot)\Debug\P1*.*</FilesToExclude>
</PropertyGroup>
<ItemGroup>
  <FilesToCopy Include="$(BinariesRoot)\Debug\*.*" Exclude="$(FilesToExclude)" />
</ItemGroup>

и

<PropertyGroup>
  <FilesToExclude>$(BinariesRoot)\Debug\P0*.*;$(BinariesRoot)\Debug\P1*.*</FilesToExclude>
</PropertyGroup>
<ItemGroup>
  <FilesToCopy Include="$(BinariesRoot)\Debug\*.*" Exclude="@(FilesToExclude)" />
</ItemGroup>

Когда я приду, чтобы скопировать файлы, используя это ...

<Copy SourceFiles="@(FilesToCopy)" DestinationFolder="T:\Deployment\" />

... он всегда копирует все файлы (т.е. не исключает файлы P0 и P1).

1 Ответ

0 голосов
/ 11 марта 2010

Запустите сборку с диагностическим выводом MSBuild ... /clp:v=diag и посмотрите значения ваших Предметов.Вы также можете просто добавить шаг для вывода списка файлов следующим образом:

<Message Text="SrcFiles: @(FilesToCopy)" />

Если посмотреть на ваш пример выше, второй фрагмент верен, а третий нет (ссылка на свойство выполняется черезне через @)

...