Поделиться через


CopyFiles@1 — задача копирования файлов версии 1

Эта задача предназначена для копирования файлов из исходной папки в целевую папку с помощью шаблонов соответствия. (Шаблоны соответствия будут соответствовать только путям к файлам, а не к папкам).

Примечание.

В CopyFiles@2доступна более новая версия этой задачи.

Синтаксис

# Copy Files v1
# Copy files from source folder to target folder using minimatch patterns (The minimatch patterns will only match file paths, not folder paths).
- task: CopyFiles@1
  inputs:
    #SourceFolder: # string. Source Folder. 
    Contents: '**' # string. Required. Contents. Default: **.
    TargetFolder: # string. Required. Target Folder. 
  # Advanced
    #CleanTargetFolder: false # boolean. Clean Target Folder. Default: false.
    #OverWrite: false # boolean. Overwrite. Default: false.
    #flattenFolders: false # boolean. Flatten Folders. Default: false.

Входные данные

исходной папки SourceFolder -
string.

Необязательно. Папка, содержащая файлы, которые нужно скопировать. Если папка пуста, задача копирует файлы из корневой папки репозитория, как если бы $(Build.SourcesDirectory) был указан.

Если сборка создает артефакты за пределами каталога источников, укажите $(Agent.BuildDirectory) для копирования файлов из каталога, созданного для конвейера.


содержимого Contents -
string. Обязательное. Значение по умолчанию: **.

Пути к файлу, которые необходимо включить в копию. Эта строка поддерживает несколько строк шаблонов соответствия.

Рассмотрим пример.

  • * копирует все файлы в указанной исходной папке.
  • ** копирует все файлы в указанной исходной папке и все файлы во всех вложенных папках.
  • **\bin\** копирует все файлы рекурсивно из любой папки bin.

Шаблон используется для сопоставления только путей к файлам, а не путей к папкам. Укажите шаблоны, например **\bin\** вместо **\bin.

Используйте разделитель пути, соответствующий типу агента сборки. Например, / необходимо использовать для агентов Linux. Ниже приведены дополнительные примеры.


TargetFolder - целевая папка
string. Обязательное.

Целевая папка или UNC-путь, содержащий скопированные файлы. Можно использовать переменные. Пример: $(build.artifactstagingdirectory).


CleanTargetFolder - чистая целевая папка
boolean. Значение по умолчанию: false.

Необязательно. Удаляет все существующие файлы в целевой папке перед процессом копирования.


OverWrite - перезапись
boolean. Значение по умолчанию: false.

Необязательно. Заменяет существующие файлы в целевой папке.


flattenFolders - неструктурированных папок
boolean. Значение по умолчанию: false.

Необязательно. Неструктурирует структуру папок и копирует все файлы в указанную целевую папку.


Параметры управления задачами

Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задач.

Выходные переменные

Нет.

Замечания

В CopyFiles@2доступна более новая версия этой задачи.

Если файлы не совпадают, задача по-прежнему сообщает об успешном выполнении. Если соответствующий файл уже существует в целевой папке, задача сообщит о сбое, если не задано значение true Overwrite.

Требования

Требование Описание
Типы конвейеров YAML, классическая сборка
Выполняется в Агент, DeploymentGroup
требования Нет
возможностей Эта задача не удовлетворяет требованиям к последующим задачам в задании.
ограничения команд Любое
переменные settable Любое
Версия агента 1.91.0 или больше
Категория задач Полезность

См. также