Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Använd den här uppgiften för att kopiera filer från en källmapp till en målmapp med hjälp av matchningsmönster. (Matchningsmönstren matchar endast filsökvägar, inte mappsökvägar).
Syntax
# Copy files v2
# Copy files from a source folder to a target folder using patterns matching file paths (not folder paths).
- task: CopyFiles@2
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.
#preserveTimestamp: false # boolean. Preserve Target Timestamp. Default: false.
#retryCount: '0' # string. Retry count to copy the file. Default: 0.
#delayBetweenRetries: '1000' # string. Delay between two retries. Default: 1000.
#ignoreMakeDirErrors: false # boolean. Ignore errors during creation of target folder. Default: false.
# Copy files v2
# Copy files from a source folder to a target folder using patterns matching file paths (not folder paths).
- task: CopyFiles@2
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.
#preserveTimestamp: false # boolean. Preserve Target Timestamp. Default: false.
Ingångar
SourceFolder
-
källmapp
string
.
Valfritt. Mappen som innehåller de filer som du vill kopiera. Om mappen är tom kopierar aktiviteten filer från rotmappen på lagringsplatsen som om $(Build.SourcesDirectory)
angavs.
Om bygget genererar artefakter utanför källkatalogen anger du $(Agent.BuildDirectory)
för att kopiera filer från katalogen som skapats för pipelinen.
Contents
-
innehåll
string
. Obligatoriskt. Standardvärde: **
.
De filsökvägar som ska inkluderas som en del av kopian. Den här strängen stöder flera rader med matchningsmönster.
Till exempel:
-
*
kopierar alla filer i den angivna källmappen. -
**
kopierar alla filer i den angivna källmappen och alla filer i alla undermappar. -
**\bin\**
kopierar alla filer rekursivt från valfri lagerplatsmapp.
Mönstret används för att endast matcha filsökvägar, inte mappsökvägar. Ange mönster, till exempel **\bin\**
i stället för **\bin
.
Omslutning av specialtecken i []
kan användas för att undkomma literala globtecken i ett filnamn. Till exempel kan det literala filnamnet hello[a-z]
undantagas som hello[[]a-z]
. Mer information finns i referensen Filmatchningsmönster.
Använd sökvägsavgränsaren som matchar din byggagenttyp. Till exempel måste /
användas för Linux-agenter. Fler exempel visas nedan.
TargetFolder
-
målmapp
string
. Obligatoriskt.
Målmappen eller UNC-sökvägen som ska innehålla de kopierade filerna. Du kan använda variabler. Exempel: $(build.artifactstagingdirectory)
.
CleanTargetFolder
-
Rensa målmappen
boolean
. Standardvärde: false
.
Valfritt. Tar bort alla befintliga filer i målmappen före kopieringsprocessen.
OverWrite
-
Skriv över
boolean
. Standardvärde: false
.
Valfritt. Ersätter de befintliga filerna i målmappen.
flattenFolders
-
Platta ut mappar
boolean
. Standardvärde: false
.
Valfritt. Förenklar mappstrukturen och kopierar alla filer till den angivna målmappen.
preserveTimestamp
-
Bevara måltidsstämpeln
boolean
. Standardvärde: false
.
Bevarar målfilens tidsstämpel med hjälp av den ursprungliga källfilen.
retryCount
-
Antal återförsök för att kopiera filen
string
. Standardvärde: 0
.
Anger antalet återförsök för att kopiera filen. Den här strängen är användbar för tillfälliga problem, till exempel UNC-målsökvägar på en fjärrvärd.
delayBetweenRetries
-
Fördröjning mellan två återförsök.
string
. Standardvärde: 1000
.
Anger fördröjningen mellan två återförsök. Den här strängen är användbar för tillfälliga problem, till exempel UNC-målsökvägar på en fjärrvärd.
ignoreMakeDirErrors
-
Ignorera fel när målmappen skapas.
boolean
. Standardvärde: false
.
Ignorerar fel som uppstår när målmappen skapas. Den här strängen är användbar för att undvika problem med parallell körning av uppgifter av flera agenter i en målmapp.
Alternativ för uppgiftskontroll
Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.
Utdatavariabler
Ingen.
Anmärkningar
Om inga filer matchar rapporterar uppgiften fortfarande att den lyckades.
- Om
Overwrite
detfalse
redan finns en matchad fil i målmappen rapporterar aktiviteten inte ett fel utan loggar att filen redan finns och hoppar över den. - Om
Overwrite
dettrue
redan finns en matchad fil i målmappen skrivs den matchade filen över.
Exempel
Kopiera filen till mellanlagringskatalogen för artefakter och publicera
steps:
- task: CopyFiles@2
inputs:
contents: '_buildOutput/**'
targetFolder: $(Build.ArtifactStagingDirectory)
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: $(Build.ArtifactStagingDirectory)
artifactName: MyBuildOutputs
Kopiera körbara filer och en readme-fil
Mål
Du vill bara kopiera readme-filen och de filer som behövs för att köra den här C#-konsolappen:
`-- ConsoleApplication1
|-- ConsoleApplication1.sln
|-- readme.txt
`-- ClassLibrary1
|-- ClassLibrary1.csproj
`-- ClassLibrary2
|-- ClassLibrary2.csproj
`-- ConsoleApplication1
|-- ConsoleApplication1.csproj
Anmärkning
ConsoleApplication1.sln innehåller en bin-mapp med .dll och .exe filer, se resultaten nedan för att se vad som flyttas!
På fliken $(BuildConfiguration)
Variabler är inställd på release
.
Exempel med flera matchningsmönster:
steps:
- task: CopyFiles@2
displayName: 'Copy Files to: $(Build.ArtifactStagingDirectory)'
inputs:
Contents: |
ConsoleApplication1\ConsoleApplication1\bin\**\*.exe
ConsoleApplication1\ConsoleApplication1\bin\**\*.dll
ConsoleApplication1\readme.txt
TargetFolder: '$(Build.ArtifactStagingDirectory)'
Exempel med OR-villkor:
steps:
- task: CopyFiles@2
displayName: 'Copy Files to: $(Build.ArtifactStagingDirectory)'
inputs:
Contents: |
ConsoleApplication1\ConsoleApplication1\bin\**\?(*.exe|*.dll)
ConsoleApplication1\readme.txt
TargetFolder: '$(Build.ArtifactStagingDirectory)'
Exempel med NOT-villkor:
steps:
- task: CopyFiles@2
displayName: 'Copy Files to: $(Build.ArtifactStagingDirectory)'
inputs:
Contents: |
ConsoleApplication1\**\bin\**\!(*.pdb|*.config)
!ConsoleApplication1\**\ClassLibrary*\**
ConsoleApplication1\readme.txt
TargetFolder: '$(Build.ArtifactStagingDirectory)'
Exempel med variabler i innehållsavsnittet
- task: CopyFiles@2
inputs:
Contents: '$(Build.Repository.LocalPath)/**'
TargetFolder: '$(Build.ArtifactStagingDirectory)'
Resultat
Dessa filer kopieras till mellanlagringskatalogen:
`-- ConsoleApplication1
|-- readme.txt
`-- ConsoleApplication1
`-- bin
`-- Release
| -- ClassLibrary1.dll
| -- ClassLibrary2.dll
| -- ConsoleApplication1.exe
Kopiera allt från källkatalogen utom .git-mappen
Exempel med flera matchningsmönster:
steps:
- task: CopyFiles@2
displayName: 'Copy Files to: $(Build.ArtifactStagingDirectory)'
inputs:
SourceFolder: '$(Build.SourcesDirectory)'
Contents: |
**/*
!.git/**/*
TargetFolder: '$(Build.ArtifactStagingDirectory)'
Kravspecifikation
Krav | Beskrivning |
---|---|
Pipelinetyper | YAML, klassisk version |
Körs på | Agent, DeploymentGroup |
Krav | Ingen |
Kapaciteter | Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet. |
Kommandobegränsningar | Den här aktiviteten körs med hjälp av följande kommandobegränsningar: begränsad |
variabler som kan | Den här uppgiften har behörighet att ange följande variabler: Inställningsvariabler är inaktiverade |
Agentversion | 2.182.1 eller senare |
Aktivitetskategori | Nyttighet |
Krav | Beskrivning |
---|---|
Pipelinetyper | YAML, klassisk version |
Körs på | Agent, DeploymentGroup |
Krav | Ingen |
Kapaciteter | Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet. |
Kommandobegränsningar | Vilken som helst |
variabler som kan | Vilken som helst |
Agentversion | 1.91.0 eller senare |
Aktivitetskategori | Nyttighet |
Se även
- Referens för filmatchningsmönster
- Hur använder jag den här uppgiften för att publicera artefakter
- Lär dig hur du använder utförliga loggar för felsökning.