Как указать структуру папок с задачей msbuild copy
У меня есть следующий msbuild script, который копирует весь DeploymentDirectory в VersionSpecificDirectory. Вот фрагмент:
<CreateItem Include="$(DeploymentDirectory)/**/*.*" >
<Output ItemName="AllDeploymentFilesToCopy" TaskParameter="Include" />
</CreateItem>
<Copy SourceFiles="@(AllDeploymentFilesToCopy)"
DestinationFiles="@(AllDeploymentFilesToCopy->'$(VersionSpecificDirectory)\%(RecursiveDir)%(Filename)%(Extension)')" />
Что будет script для копирования всех файлов в DeploymentDirectory, а не в самом каталоге?
Обновление: я попытался изменить направление косой черты как обратную косую черту, и проблема все еще существует.
Другое обновление: это не связано с кодом msbuild. И код в моем вопросе, и код в ответе отлично подходят для этого.
Ответы
Ответ 1
Попробуйте следующее:
<ItemGroup>
<MySourceFiles Include="c:\MySourceTree\**\*.*"/>
</ItemGroup>
<Target Name="CopyFiles">
<Copy
SourceFiles="@(MySourceFiles)"
DestinationFiles="@(MySourceFiles->'c:\MyDestinationTree\%(RecursiveDir)%(Filename)%(Extension)')"
/>
</Target>
Из MSDN.