删除MSBuild中目标位置的其他文件

时间:2013-09-19 11:31:45

标签: visual-studio deployment msbuild msdeploy

当我使用Visual Studio构建和部署时,我可以选择“删除目的地的其他文件”。

如何使用MSBuild执行此操作?由于附加文件会有所不同,我不能只使用RemoveRemoveDir任务。

2 个答案:

答案 0 :(得分:4)

如果您有发布配置文件(.pubxml),我相信使用此配置文件可以检查“删除目的地的其他文件”

<SkipExtraFilesOnServer>False</SkipExtraFilesOnServer>

然后引用msbuild中的发布配置文件:

<MSBuild Projects="proj.csproj"
         Targets="WebPublish"
         Properties="VisualStudioVersion=11.0;
          Configuration=$(Configuration);
          PublishProfile=$(Configuration).pubxml;
          MSDeployServiceUrl=$(ServiceUrl);
          UserName=$(MSDeployUsername);
          Password=$(MSDeployPassword)"  />

如果不使用发布配置文件,我认为只需在构建任务属性中添加SkipExtraFilesOnServer = False即可。

答案 1 :(得分:0)

您将另一个属性传递给msbuild:

<Target Name="Deploy" DependsOnTargets="Build">
        <MSBuild Projects="MyProject.sln" Properties="...SkipExtraFilesOnServer=False..."/>
</Target>