2010-01-20 6 views
0

J'essaie d'exclure une série de fichiers d'une étape de déploiement personnalisée dans ma définition de build TFS 2008. Je veux inclure tous les fichiers sauf ceux commençant par P0 ou P1. Voici quelques-unes de mes tentatives ...Exclure plusieurs fichiers dans TFS Build

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

et

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

et

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

Quand je viens de copier les fichiers en utilisant cette ...

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

... il copie toujours tous les fichiers (ie n'exclut pas e fichiers P0 et P1).

Répondre

0

Exécutez votre build avec la sortie de diagnostic MSBuild ... /clp:v=diag et consultez les valeurs de vos articles. Vous pouvez également ajouter simplement une étape vers la sortie la liste des fichiers comme ceci:

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

En regardant votre exemple ci-dessus, le deuxième extrait est correct et le troisième est pas (référence à une propriété se fait par $ non par @)

Questions connexes