我有以下的构建目标设定做我展开时发布,由Hanselman在他的Tiny Happy Features #3提到,在许多其他地方也记作什么,我认为是推荐的方法:MSDeploy通过的MSBuild复制所有文件,而不是同步文件
msbuild my_web_application.csproj /p:Configuration=Production;
DeployOnBuild=true;
PublishProfile=Production;
VisualStudioVersion=11.0;
AllowUntrustedCertificate=true;
AuthType=NTLM
这做这项工作,并替换部署一步,我以前通过调用MS命令行上部署有:
msdeploy.exe" -source:package="c:\source_to_my_web_application.zip" -dest:auto,my_server_name,includeAcls="False" -verb:sync -disableLink:AppPoolExtension -disableLink:ContentExtension -disableLink:CertificateExtension -setParamFile:"c:\source_to_my_web_application\Package.SetParameters.xml"
我可以在这两种方法中看到的最大的区别是,命令行调用只会pu sh修改有修改的文件,而msbuild调用每次都通过整个Web应用程序发送。
有没有办法让msbuild版本做“同步”行为,就像直接调用msdeploy为我做的那样?