Dela via


Kommandot Shelve (Versionskontroll för Team Foundation)

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

Kommandot Team Foundation Version Control (TFVC) shelve lagrar en uppsättning väntande ändringar, tillsammans med väntande incheckningsanteckningar, en kommentar och en lista över associerade arbetsobjekt på en Azure DevOps-server utan att checka in dem.

Förutsättningar

Om du vill använda shelve kommandot för att ta bort en hylloruppsättning måste du vara ägare till en hyllor, eller så måste behörigheten Administrera ändringar på hyllan anges till Tillåt. Mer information finns i TFVC-standardbehörigheter.

Syntax

tf shelve  [/replace] [/comment:("comment"|@commentfile)] [shelvesetname] [/validate][/noprompt] [/login:username,[password]]
tf shelve [/move] [/replace] [/comment:("comment"|@commentfile)] 
[/recursive] [shelvesetname] itemspec [/validate] [/noprompt] [/login:username,[password]]
tf shelve /delete shelvesetname[;owner] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]

Parametrar

Argument

Argument Beskrivning
<commentfile> Anger en filsystemsökväg för en fil som kommentarer för hyllorna ska läsas från.
<comment> Anger kommentaren för hyllorna.
<itemspec> Identifierar de filer eller mappar som ska lagras på hyllan. Som standard läggs alla väntande ändringar i den aktuella arbetsytan på hyllan om den här parametern inte har angetts. Mer information om hur Team Foundation parsar itemspec för att avgöra vilka objekt som finns inom omfånget finns i Använda alternativ för att ändra hur ett kommando fungerar.
<shelvesetname> Anger ett namn med vilket hyllorna kan hämtas från Azure DevOps-servern. Du kan ange en befintlig kombination av shelvesetname och owner, men bara om /replace det också har angetts.

Du måste ange ett värde för den här parametern.
<owner> Identifierar den aktuella eller avsedda ägaren av hyllorna efter användarnamn. Som standard tilldelas den aktuella användaren ägarskap för hyllorna om en inte har angetts.
<username> Ger alternativet ett värde /login . Du kan ange ett användarnamnsvärde som antingen DOMAIN\username eller username.
<TeamProjectCollectionUrl> URL:en för projektsamlingen som innehåller de filer eller mappar som du vill lägga på hyllan, till exempel http://myserver:8080/tfs/DefaultCollection/.

Alternativ

Alternativ Beskrivning
/new Det valda tillståndet för varje väntande ändring som visas i dialogrutan Visual Studio Incheckning, kommentaren, tillhörande arbetsobjekt, incheckningsanteckningar och orsaken till åsidosättning av incheckningsprincipen lagras på utvecklingsdatorn som väntande ändringar tills du checkar in dem. Alternativet /new rensar dessa metadata för incheckning innan du checkar in.
/move Tar bort väntande ändringar från arbetsytan när hyllorna har slutförts.
/replace Ersätter den befintliga hylloruppsättningen med samma namn och ägare som den som du anger.
/delete Tar bort den angivna hylloruppsättningen. Endast alternativet /server kan kombineras med det här alternativet. Om du inte tar med alternativet /noprompt visas ett bekräftelsemeddelande när alternativet /delete har angetts.
/comment Lägger till en angiven kommentar som beskriver ändringarna på hyllan.
/recursive Lägger alla objekt i den angivna hylloruppsättningsmappen, dess undermappar och alla objekt däri om itemspec du anger är en mapp.
/noprompt Undertrycker alla uppmaningar om indata från dig.
/validate Det här alternativet markerar kryssrutan Utvärdera principer och incheckningsanteckningar innan du hyllor i dialogrutan Shelve – Source Files (Hyllor – källfiler ) när den öppnas. När kryssrutan validering är markerad utvärderar dialogrutan incheckningsprinciperna och verifierar att incheckningsanteckningar har fyllts i. Det här alternativet är användbart när ändringarna lämnas ut för granskning och incheckning av någon annan. Ogiltigt när det kombineras med /noprompt.
/login Anger användarnamn och lösenord för att autentisera användaren med Azure DevOps Server.
/collection Anger projektsamlingen.

Kommentarer

Kommandot shelve för tf kommandoradsverktyget säkerhetskopierar väntande ändringar, en lista över associerade arbetsobjekt, pågående incheckningsanteckningar och kommentarer i en hylloruppsättning på Azure DevOps-servern. En hyllor är ungefär som en ändringsuppsättning som inte har checkats in på servern. Precis som en ändringsuppsättning kan en hyllor hämtas från servern till en lokal arbetsyta av alla användare som har tillräcklig behörighet.

Hyllor är ett alternativ till att checka in väntande ändringar som inte har testats tillräckligt. Använd hyllor när du vill avbryta ditt arbete för att:

  • Dela en uppsättning lokala arbetsfiler med en annan utvecklare eller testare utan att checka in dina ändringar på versionskontrollservern.

  • Lägg en grupp väntande ändringar åt sidan tillfälligt utan att checka in dem, så att du i stället kan arbeta med ett problem med högre prioritet. När du har slutfört arbetet med uppgiften med hög prioritet kan du återställa dina ändringar på hyllan med hjälp av kommandot Unshelve.

Om du inkluderar /move alternativet shelve återställer kommandot varje filrevision på hyllan till den version av basarbetsytan som är den senaste versionen som hämtades från servern till den aktuella arbetsytan. Mer specifikt, för alla objekt som du lägger på hyllan, alternativet /move :

  • Används Undo för att ångra de ändringar som lades på hyllan. Filerna som väntar på tillägg tas bort från arbetsytan.

  • Hämtar basarbetsytans versioner av alla filer som väntar på utgåvor finns från servern till den aktuella arbetsytan.

  • Markerar alla objekt i den aktuella arbetsytan med skrivskydd.

Om du inkluderar alternativet /delete tar TFVC bort den angivna hylloruppsättningen permanent från Azure DevOps-servern.

Mer information om hur du använder tf kommandoradsverktyget finns i Använda Team Foundation-versionskontrollkommandon.

Exempel

I följande exempel skapas en ny hylloruppsättning på Azure DevOps-servern med namnet Reflector_BuddyTest, tilldelar ägarskapet till användaren Pat, returnerar alla objekt i den aktuella arbetsytan till den senaste versionen som laddades ned under den senaste get åtgärden och anger ett skrivskyddat tillstånd:

c:\projects> tf shelve Reflector_BuddyTest;Pat /move

Följande exempel tar bort den befintliga hylloruppsättningen new-feature från servern, skapar en ny hylloruppsättning med det namnet och behåller alla väntande ändringar i den aktuella arbetsytan:

c:\projects> tf shelve new-feature /replace

I följande exempel skapas en hylloruppsättning med namnet HelloWorld_TestMe som innehåller alla väntande ändringar i alla .cs filer i arbetsmappen C:\projects och dess undermappar:

c:\projects> tf shelve HelloWorld_TestMe c:\projects\*.cs /recursive

I följande exempel tas hyllorna HelloWorld_24 bort:

c:\projects> tf shelve HelloWorld_24 /delete