2016-05-09 8 views
0

Я использую msdeploy.exe для развертывания пакетов с сервера сборки, и развертывание копирует все файлы каждый раз. В соответствии с этим article «« Веб-развертывание »достаточно умен, чтобы сравнить удаленный сервер с вашим локальным проектом - и только копировать файлы, в которых он нуждается.« Я не вижу никаких параметров командной строки, которые влияют на это, поэтому я интересно, работает ли это только при синхронизации одного сайта IIS с другими стилями, синхронизирующими сайт с пакетом.Развертывает ли средство командной строки Microsoft WebDeploy deltas, когда исходный код является пакетом?

Вот приблизительная команда, которую я выдаю в случае, если это помогает в ответе на вопрос.

msdeploy.exe -verb:sync -source:package="C:\[path]/deploymentPackage.zip" -dest:auto,computerName="server.com",includeAcls="False" -setParamFile="C:\[path]/parameterFile.xml" 

ответ

1

По умолчанию WebDeploy/MSDeploy копирует только «измененные» файлы в цель. По умолчанию для определения измененных файлов используется штамп filesize и datetime. Поэтому каждая новая сборка скорее всего скопирует все файлы в цель.

В качестве альтернативы вы можете установить флаг -useCheckSum команды MSDeploy.exe для идентифи- кации измененных файлов на основе содержимого файла.

https://technet.microsoft.com/en-us/library/dd569089(v=ws.10).aspx