如何让MSDeploy不删除项目中的额外文件夹?

Jer*_*amp 29 msbuild publishing visual-studio-2010 msdeploy

我正在使用Team city中的MSBuild运行器来构建我的项目并将其部署到临时环境.一切都很完美,除了它不断移除位于项目根目录中的我的存储库文件夹.

在Visual Studio 2010中,发布配置文件对话框中有一个复选框,显示"在目标上保留额外文件(不要删除)"

有没有办法用MSBuild完成同样的事情?

<Target Name="Deploy" DependsOnTargets="Build;Test">
        <MSBuild Projects="MyProject.sln" Properties="Configuration=$(Configuration); username=username; password=password; DeployOnBuild=True; DeployTarget=MSDeployPublish; MSDeployPublishMethod=WMSVC; MSDeployServiceUrl=https://DEVWEB01:8172/MsDeploy.axd; DeployIISAppPath=MyProject.$(Configuration); AllowUntrustedCertificate=True;"/>
</Target>
Run Code Online (Sandbox Code Playgroud)

Jer*_*amp 52

找到答案了!

您需要做的就是将以下属性添加到Properties属性:

SkipExtraFilesOnServer = TRUE;

  • 有没有办法在每个文件夹而不是全局添加? (7认同)
  • 我只是花了一天时间试图找出如何使用-enableRule:DoNotDeleteRule(我可以传递给MSDEPLOY.exe的参数),但TFS不会拥有它.我只是将/ p:SkipExtraFilesOnServer = True添加到TFS构建定义中的MSBuildArguments,它就可以了!非常感谢 :-) (4认同)