Ответ 1
Я подозреваю, что вы ищете:
**\bin\$(BuildConfiguration)\**\*;-:**\obj\**
-:
исключает элементы из тех, что перед ним.
Я настраиваю TFS 2015 на-prem, и у меня возникла проблема на моем последнем этапе сборки, Publish Build Artifacts. По какой-то причине агент сборки, похоже, архивирует старые двоичные файлы, и у меня остается огромный путь к файлу:
E:\TFSBuildAgent\_work\1a4e9e55\workspace\application\Development\project\WCF\WCF\obj\Debug\Package\Archive\Content\E_C\TFSBuildAgent\_work\1a4e9e55\workspace\application\Development\project\WCF\WCF\obj\Debug\Package\PackageTmp\bin
Я копирую файлы, используя пример шаблона минимизации, чтобы начать с:
**\bin
Я тестирую только сейчас, так что это не постоянное решение, но как я могу скопировать все двоичные файлы, которые находятся в папке bin, но не потомок obj?
Из исследования я думаю, что это должно работать, но это не так (это ничего не соответствует):
**!(obj)**\bin
Я использую www.globtester.com для тестирования. Какие-либо предложения?
В отдельном примечании я рассмотрю проблему архивирования позже, но если у кого есть какие-либо указания на нее, не стесняйтесь комментировать. Благодаря
Я подозреваю, что вы ищете:
**\bin\$(BuildConfiguration)\**\*;-:**\obj\**
-:
исключает элементы из тех, что перед ним.
Согласно документации Microsoft, вот список шаблоны сопоставления файлов. Самые важные правила:
?
?
соответствует любому одиночному символу в имени файла или каталога (ноль или один раз).*
или +
*
или +
соответствует ноль или более символов в имени файла или каталога.@
@
соответствует ровно один раз.(
, )
и |
|
, он рассматривается как логический ИЛИ, например. *(hello|world)
означает "Нуль или больше случаев приветствия или мира" **
**
рекурсивный подстановочный знак. Например, /hello/**/*
соответствует всем потомкам /hello
.!
!
изменяет значение шаблона include для исключения. Поддерживаются шаблоны с чередующимися исключениями.[
и ]
[]
соответствует набору или диапазону символов в имени файла или каталога.#
#
, рассматриваются как комментарии.[]
. Например, буквальное имя файла hello[a-z]
может быть экранировано как hello[[]a-z]
.В поле "Содержание" этапа сборки "Копировать файлы" можно использовать следующие выражения для создания пакета развертывания для веб-проекта:
** \? (Конфигурации |..dll | *.sitemap)
** \? (.exe |.dll |.pdb |.xml | *.resx)
** \? (JS |..css |.html |.aspx |.ascx |.asax |.master |.cshtml | *.map)
? **\(. GIF |.png |.jpg |.ico | *.pdf)
Примечание. Возможно, вам потребуется добавить дополнительные расширения, в зависимости от потребностей вашего проекта.