Несколько пропусков в MSDeploy? - PullRequest
13 голосов
/ 03 ноября 2010

Мне известно о параметре -skip , но есть ли способ указать MSDeploy пропускать несколько каталогов? Вызов параметра несколько раз не работает.

Ответы [ 2 ]

36 голосов
/ 08 ноября 2010

Если в папке C:\Data\Personal\My Repo\MSDeploy\MultiSkip есть следующие файлы.alt text

Для синхронизации источника с dest команда будет:

msdeploy -verb:sync 
    -source:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Source" 
    -dest:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Dest"

Изменения показаны на рисунке ниже.alt text

Без пропусков есть 19 изменений.

Пропустить 1 папку

Тогда команда для пропуска каталога sub03 будет:

msdeploy -verb:sync 
    -source:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Source" 
    -dest:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Dest" 
    -skip:objectName=dirPath,absolutePath="sub03"

Результат будет:

alt text

Итак, добавлено 14 файлов.

Пропустить 2 директории

Чтобы пропустить 2 каталога, команда будет

msdeploy -verb:sync 
    -source:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Source" 
    -dest:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Dest" 
    -skip:objectName=dirPath,absolutePath="sub03" 
    -skip:objectName=dirPath,absolutePath="sub02"

Тогда результат будет alt text Здесь есть только 9 изменений, поэтому мы видим, что несколько пропусков работают.

5 голосов
/ 08 мая 2013

skip:objectName=dirPath,absolutePath= принимает регулярное выражение, поэтому вы можете достичь того же результата, что и ответ выше, используя:

-skip:objectName=dirPath,absolutePath="sub02|sub03"

Труба |, указывающая OR

...