Я знаю параметр -skip, но есть ли способ сообщить MSDeploy пропустить несколько каталогов? Вызов параметра несколько раз не работает.
Несколько пропусков в MSDeploy?
Ответ 1
Если у вас есть следующие файлы в папке C:\Data\Personal\My Repo\MSDeploy\MultiSkip
.
Чтобы синхронизировать источник в dest, команда будет следующей:
msdeploy -verb:sync
-source:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Source"
-dest:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Dest"
Изменения показаны на рисунке ниже.
Без пропусков есть 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"
Результат:
Итак, есть 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"
Тогда результат этого
Здесь всего 9 изменений, поэтому мы видим, что несколько пропусков работают.
Ответ 2
skip:objectName=dirPath,absolutePath=
принимает регулярное выражение, поэтому вы можете достичь того же результата, что и ответ выше, используя:
-skip:objectName=dirPath,absolutePath="sub02|sub03"
Труба |
указывает OR