2011-01-27 14 views
0

MSBuildエクステンションパックを使用しています。ビルドディレクトリの内容全体をファイルシステムの別のディレクトリにコピーしたいと思います。私は、目的のディレクトリの名前を変更したくないだけで、内容を置き換えます。それはmsbuild拡張パックで私の慣れていないかもしれませんが、これは簡単にする必要があり、私はWeb上ですぐに利用可能なドキュメントを見つけることができなかったようです。MSBuildエクステンションパックディレクトリの内容を別のディレクトリにコピー

ビルドが成功した後、Continuous Integration環境で自動的に展開されるサービスをセットアップしようとしています。

答えて

1

私が覚えている限り、別の手順でクリアしてコピーする必要があります。だから最初に削除/パージしてからコピーしてください。私は(私が最後にやった時に) "上書き"する方法を見つけることができませんでした。これは実際に私たちのためにもっとうまくいっています。一つのビルドでは以前のものが含まれていたファイルが削除される可能性があるので、それらを "残す"ことは望ましくありません。削除するには

、(DeploymentDesintationPathはパスを持つプロパティであると仮定)してみてください:

<MSBuild.ExtensionPack.FileSystem.Folder 
    TaskAction="RemoveContent" 
    path="$(DeploymentDestinationPath)" /> 

[コピー(あなたが送信元と宛先の両方のためのitemgroupを移入する必要があります注意してください)

<ItemGroup>  
     <DeploymentSourceFiles 
      Include="$(BuildFolder)\**\*" 
     /> 
     <DeploymentDestinationFiles 
      Include="@(DeploymentSourceFiles-> 
      '$(DeploymentDestinationPath)\%(RecursiveDir)%(Filename)%(Extension)')" 
     /> 
</ItemGroup> 

<Copy SourceFiles="@(DeploymentSourceFiles)" 
    DestinationFiles="@(DeploymentDestinationFiles)" /> 

私は数ヶ月でこれをしていないので、これらの例のいずれかが微調整を必要とする場合はご容赦ください。

+0

これは完璧に機能しました。それは、私がループのために持っているDeploymentDestinationFilesプロパティのためのインクルードの構文でした。ありがとう! – aceinthehole

関連する問題