在具有多个用户的Visual Studio中使用MSDeploy/Web Deploy作为Publish方法

Ber*_*van 7 visual-studio webdeploy

是否可以使用来自多个开发人员PC的Web部署?

当我们尝试这样做时,似乎我们需要在其他人想要进行部署时重新发布所有内容.

我们做错了什么,有没有解决方法,或者在我们的场景中推荐的方法是什么?

我知道从中心位置部署是一个更好的解决方案,但不幸的是,目前这不是一个选择.

Chr*_*nes 15

您无法从项目中执行此操作,但编辑Visual Studio MSBuild脚本以将其打开(适用于所有Web部署)非常简单.这是如何做:

  1. 打开 C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets
  2. 找到MSDeployPublish目标
  3. 在该任务中,找到对任务的调用VSMSDeploy(第4376行)
  4. UseChecksum="true"属性添加到VSMSDeploy任务调用

您也可以按照相同的步骤为部署预览执行此操作,但在步骤2中查找MSDeployFilePreview目标而不是MSDeployPublish任务.

确保在进行更改后重新启动VS以确保它们已正确拾取.

更新:MS已添加将UseChecksum标志传递给VS 2013的功能.为此,请将以下属性添加到.pubxml文件:

<MSDeployUseChecksum>true</MSDeployUseChecksum>
Run Code Online (Sandbox Code Playgroud)

更多信息可以在这里找到


Ric*_*lay 2

使用 Visual Studio,不行。当前的构建脚本无法向 MSDeploy 提供必要的标志。

如果您使用cmd包中生成的文件来执行部署,您可以附加-useChecksum到命令行,它将使用校验和比较而不是上次修改日期。

  • 只是注意到,从 2013 版开始,使用校验和现在可以配置为在 Visual Studio 中使用。更多信息位于:http://blogs.msdn.com/b/webdev/archive/2013/10/30/web-publishing -updates-for-app-offline-and-usechecksum.aspx (2认同)