J'utilise SvnInfo task dans le script MSBuild:MSBuild SvnInfo - quelles entrées cibles sont correctes?
<SvnInfo LocalPath="$(Sources)">
<Output TaskParameter="Revision" PropertyName="Revision" />
</SvnInfo>
$(Sources)
contient des fichiers source uniquement.
De toute évidence, SvnInfo
dépend des fichiers $(Sources)
. Target utilise ensuite les informations pour générer le fichier de sortie avec le numéro de révision.
En fait, je veux exécuter SvnInfo lorsque le numéro de révision est modifié, mais pas pour exécuter Target (utiliser la construction incrémentielle) lorsque le numéro de révision est le même que le précédent. Comment spécifier correctement l'entrée dans la cible (attribut Inputs
dans la balise Target
, qui contient l'appel de SvnInfo
tâche)?
je l'ai fait de la façon suivante:
<ItemGroup>
<Target1Inputs Include="$(Sources)\**" />
</ItemGroup>
<Target Name="Target1" Inputs="@(Target1Inputs)" Outputs="...">
...
<!-- SvnInfo call here -->
<!-- File with revision number is created here -->
</Target>
Il me semble la solution de contournement, car idéalement je devrais savoir quels fichiers SvnInfo
dépend sans deviner. Est-il possible d'obtenir de telles informations?
Je ne suis pas non plus au courant si les dossiers .svn
sont modifiés ou non.
Alors, vous demandez comment remplir "@ (Target1Inputs)" par des fichiers ou quelle entrée vous voulez dire? – sll
@sllev Je demande ce qu'il faut spécifier dans l'attribut d'entrée de la balise Target. J'ai proposé ma variante, mais je ne suis pas sûr. (Question mise à jour) – sergtk
Voir ma réponse, si vous voulez dire quelque chose d'autre s'il vous plaît laissez-moi savoir – sll