我有一个包含大量文件的网站,使用团队构建并通过 Web 部署包进行部署。我遇到的问题是,软件包是从农场的一台机器构建的,时间戳并不总是匹配。默认情况下,Web 部署意味着完整的站点滚动,并且有如此多的文件以及跨集群的同步,这不是最佳选择。
通过命令行部署,我可以通过 -UseCheckSum ,这可以解决手动部署问题。现在我尝试使用带有自动部署功能的 CI 构建,并通过我的build设置传递 MSbuild 参数。有没有办法让它以同样的方式部署?
最佳答案
您无法在 MSBuild 中执行此操作,但可以编辑生成服务器上的 Microsoft.Web.Publishing.targets 文件以应用 -UseChecksum。
在这里查看我的答案:https://stackoverflow.com/a/13863041/8037
更新:MS 已添加将 UseChecksum 标志传递给 VS 2013 的功能。为此,请将以下属性添加到 .pubxml 文件中:
<MSDeployUseChecksum>true</MSDeployUseChecksum>
关于msdeploy - 使用 msbuild 将 -Usechecksum 传递给 msdeploy 的任何方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10916750/