2016-10-27 8 views
0

TFS의 다른 위치에있는 전체 폴더를 복사하려고합니다.msbuild 같은 폴더 이름으로 전체 폴더 복사

나는 다음과 같습니다

<Target Name="BuildControles"> 

    <ItemGroup> 
     <Controles Include="$(BUILD_SOURCESDIRECTORY)\ABC\FOLDERB\*.*" /> 
     <Controles Include="$(BUILD_SOURCESDIRECTORY)\joe\bloe\FOLDERA\*.*" /> 
    </ItemGroup> 

    <Copy SourceFiles="@(Controles)" DestinationFiles="@(Controles->'$(OutDir)metadata\[FOLDERA OR FOLDER B]\%(Filename)%(Extension)')" /> 
</Target> 

나는 그래서 결국이 "메타 데이터"폴더 아래에있는 특정 경로에 복사 ItemGroup (폴 데라와 FOLDERB)에 지정된 폴더가 필요합니다

..metadata \ 폴 데라 ..

..metadata \의 FOLDERB ..

% (디렉토리)과 많은 다른 것들을 시도 % (RecursiveDir) 또는 % (RelativeDir) B ut은 그것을 할 수있는 방법을 찾을 수 없습니다.

난 그냥 MSBuild를 함께 시작 해요 :)의 MSBuild에서

답변

1

당신은 기본적으로 다음() 구문 %로 참조 할 수있는 항목에 부착 된 재산 항목에 메타 데이터를 추가 할 수 있습니다 부드러운 주시기 바랍니다. 원하는 항목에 적합 할 것 같습니다 :

<ItemGroup> 
    <Controles Include="$(BUILD_SOURCESDIRECTORY)\ABC\FOLDERB\*.*" > 
    <Dest>FOLDERB</Dest> 
    </Controles> 
    <Controles Include="$(BUILD_SOURCESDIRECTORY)\joe\bloe\FOLDERA\*.*"> 
    <Dest>FOLDERA</Dest> 
    </Controles> 
</ItemGroup> 

<Copy SourceFiles="@(Controles)" 
     DestinationFiles="@(Controles->'$(OutDir)metadata\%(Dest)\%(Filename)%(Extension)')" />