Nant

2013-11-22 3 views
1

에서 복잡한 파일 세트 조건을 만듭니다. Nant를 통해 손으로 사이트를 배포합니다 (필요한 파일 만 복사). 하지만 개의 파일이 App_Code 디렉토리에 있어야합니다. 다음 코드를 준비했지만 .cs 개의 파일을 모두 제외하고 App_Code에 파일을 포함시키지 마십시오. include/exclude의 우선 순위 (있을 경우)는 무엇입니까? 그것을 고치는 방법?Nant

<copy todir="${deploy.dir}"> 
    <fileset basedir="D:\Src\MyRroj\Web"> 
    <include name="**/*"/> 
    <exclude name="**/*.cs"/> 
    <include name="App_Code/*.cs"/> 
    <exclude name="Web.config.template"/> 
    <exclude name="SqlMap.config.template"/> 
    </fileset> 
</copy> 

답변

1

Include는 파일을 추가하고 트림 파일을 제외합니다. 주문이 포함되며, 제외는 우선적으로 적용되고 제외가 적용되므로 중요하지 않아야합니다. 일반적으로 2 filesets을 제안하지만 copy은 복수 filesets을 지원하지 않으므로 가장 쉬운 해결책은 2 개의 개별 복사 명령입니다.

<copy todir="${deploy.dir}"> 
    <fileset basedir="D:\Src\MyRroj\Web"> 
    <include name="**/*"/> 
    <exclude name="**/*.cs"/> 
    <exclude name="Web.config.template"/> 
    <exclude name="SqlMap.config.template"/> 
    </fileset> 
</copy> 
<copy todir="${deploy.dir}"> 
    <fileset basedir="D:\Src\MyRroj\Web"> 
    <include name="App_Code/*.cs"/> 
    </fileset> 
</copy>