Skapa TFVC-lagringsplatser
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Viktigt!
TFVC stöds endast av klassiska pipelines och stöder inte YAML.
Välj den lagringsplats som ska skapas
När du redigerar en pipeline som använder en TFVC-lagringsplats har du följande alternativ.
- Rensa
- Ange lokal sökväg
- Etikettkällor
Namn på lagringsplats
Namn på TFVC-lagringsplatsen.
Mappningar (arbetsyta)
Inkludera med ett typvärde för Mappa endast de mappar som bygg-pipelinen kräver. Om en undermapp i en mappad mapp innehåller filer som bygg-pipelinen inte kräver mappar du den med ett typvärde av Cloak.
Se till att mappa alla mappar som innehåller filer som bygg-pipelinen kräver. Om du till exempel lägger till ett annat projekt kan du behöva lägga till ytterligare en mappning till arbetsytan.
Kappmappar som du inte behöver. Som standard mappas rotmappen för projektet i arbetsytan. Den här konfigurationen resulterar i att byggagenten laddar ned alla filer i mappen versionskontroll i projektet. Om den här mappen innehåller massor av data kan bygget slösa bort systemresurser och sakta ned bygg-pipelinen genom att ladda ned stora mängder data som den inte kräver.
När du tar bort projekt letar du efter mappningar som du kan ta bort från arbetsytan.
Om det här är en CI-version bör du i de flesta fall se till att dessa mappningar matchar filtreringsinställningarna för CI-utlösaren på fliken Utlösare.
Mer information om hur du optimerar en TFVC-arbetsyta finns i Optimera din arbetsyta.
Rensa den lokala lagringsplatsen på agenten
Du kan utföra olika former av rensning av arbetskatalogen för din lokalt installerade agent innan en version körs.
I allmänhet ska du inte rensa lagringsplatsen för snabbare prestanda för dina lokalt installerade agenter. I det här fallet bör du se till att du också skapar stegvis för att få bästa möjliga prestanda genom att inaktivera alternativet Rensa för den uppgift eller det verktyg som du använder för att skapa.
Om du behöver rensa lagringsplatsen (till exempel för att undvika problem som orsakas av residualfiler från en tidigare version) finns alternativen nedan.
Kommentar
Rensning är inte relevant om du använder en Microsoft-värdbaserad agent eftersom du får en ny agent varje gång i så fall.
Om du vill rensa lagringsplatsen väljer du sant och väljer sedan något av följande alternativ:
Källor: Bygg-pipelinen utför en ångrad ändring och bränner den aktuella arbetsytan under
$(Build.SourcesDirectory)
.Källor och utdatakatalog: Samma åtgärd som alternativet Källor ovan, plus: Tar bort och återskapar
$(Build.BinariesDirectory)
.Källkatalog: Tar bort och återskapar
$(Build.SourcesDirectory)
.Alla byggkataloger: Tar bort och återskapar
$(Agent.BuildDirectory)
.
CI-utlösare
Välj Aktivera kontinuerlig integrering på fliken Utlösare för att aktivera den här utlösaren om du vill att versionen ska köras när någon checkar in kod.
Batch-ändringar
Markera den här kryssrutan om du har många teammedlemmar som laddar upp ändringar ofta och vill minska antalet versioner som du kör. Om du väljer det här alternativet, när en version körs, väntar systemet tills bygget har slutförts och köar sedan en annan version av alla ändringar som ännu inte har skapats.
Du kan batchändringar och skapa dem tillsammans.
Sökvägsfilter
Välj de versionskontrollsökvägar som du vill inkludera och exkludera. I de flesta fall bör du se till att dessa filter är konsekventa med dina TFVC-mappningar. Du kan använda sökvägsfilter för att minska den uppsättning filer som du vill utlösa en version av.
Tips:
- Sökvägar anges alltid i förhållande till arbetsytans rot.
- Om du inte anger sökvägsfilter inkluderas arbetsytans rotmapp implicit som standard.
- Om du exkluderar en sökväg kan du inte också inkludera den om du inte kvalificerar den till en djupare mapp. Om du till exempel exkluderar /tools kan du inkludera /tools/trigger-runs-on-these
- Ordningen på sökvägsfilter spelar ingen roll.
Gated check-in
Du kan använda skyddad incheckning för att skydda mot icke-bakåtkompatibla ändringar.
Använd mappningar av arbetsytor som filter är markerat som standard. Versioner utlöses när en ändring checkas in under en sökväg som anges i källmappningarna.
Annars kan du avmarkera den här kryssrutan och ange sökvägarna i utlösaren.
Hur det påverkar dina utvecklare
När utvecklare försöker checka in uppmanas de att skapa sina ändringar.
Systemet skapar sedan en hylloruppsättning och bygger den.
Kommentar
Om du får ett fel, till exempel The shelveset _Build_95;Build\6bc8a077-3f27-4936-82e6-415fbd53ba07 could not be found for check-in
, kontrollerar du inställningen Begränsa jobbauktoriseringsomfånget till det aktuella projektet för pipelines som inte släpps och se till att det inte är aktiverat.
Mer information om den gated incheckningen finns i Checka in på en mapp som styrs av en gated check-in bygg-pipeline.
Alternativ för att köra CI-versioner
Som standard körs inte CI-versioner när den gated incheckningsprocessen har slutförts och ändringarna har checkats in.
Men om du vill att CI-versioner ska köras efter en gated-incheckning markerar du kryssrutan Kör CI-utlösare för bekräftade ändringar. När du gör det lägger bygg-pipelinen inte till ***NO_CI*** i beskrivningen av ändringsuppsättningen. Därför körs CI-versioner som påverkas av incheckningen.
Några andra saker att veta
- Kontrollera att mapparna som du inkluderar i utlösaren också ingår i dina arbetsytemappningar.
- Du kan köra gated builds på antingen en Microsoft-värdbaserad agent eller en lokalt installerad agent.
Vanliga frågor
Jag får följande fel när jag kör en pipeline:
The shelveset <xyz> could not be found for check-in
- Är ditt jobbauktoriseringsomfång inställt på samling? TFVC-lagringsplatser är vanligtvis spridda över projekten i din samling. Du kan läsa eller skriva till en mapp som bara kan nås när omfånget är hela samlingen. Du kan ange detta i organisationsinställningar eller i projektinställningen under fliken Pipelines .
Jag får följande fel när jag kör en pipeline:
The underlying connection was closed: An unexpected error occurred on a receive. ##[error]Exit code 100 returned from process: file name 'tf', arguments 'vc workspace /new /location:local /permission:Public
- Detta är vanligtvis ett tillfälligt fel som orsakas när tjänsten har tekniska problem. Kör pipelinen igen.
Vad är scorch?
Scorch är ett TFVC-elverktyg som säkerställer att källkontrollen på servern och den lokala disken är identiska. Se Microsoft Visual Studio Team Foundation Server 2015 Power Tools.