Несколько пропусков в MSDeploy?

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

Ответы

Ответ 1

Если у вас есть следующие файлы в папке 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 изменений, поэтому мы видим, что несколько пропусков работают.

Ответ 2

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

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

Труба | указывает OR