Condividi tramite


Comando Shelve (controllo della versione di Team Foundation)

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

Il comando controllo della versione di Team Foundation (TFVC) shelve archivia un set di modifiche in sospeso, insieme alle note di archiviazione in sospeso, a un commento e a un elenco di elementi di lavoro associati in un server Azure DevOps senza archiviarli effettivamente.

Prerequisiti

Se si vuole usare il shelve comando per eliminare un set di scaffali, è necessario essere un proprietario di un insieme di scaffali o l'autorizzazione delle modifiche di Amministrazione ister deve essere impostata su Consenti. Per altre informazioni, vedere Autorizzazioni tfvc predefinite.

Sintassi

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]

Parametri

Argomenti

Argomento Descrizione
<commentfile> Specifica un percorso di file system di un file da cui devono essere letti i commenti per l'insieme di scaffali.
<comment> Specifica il commento per l'insieme di scaffali.
<itemspec> Identifica i file o le cartelle da archiviare. Per impostazione predefinita, tutte le modifiche in sospeso nell'area di lavoro corrente vengono cancellate se questo parametro non è specificato. Per altre informazioni su come Team Foundation analizza per itemspec determinare quali elementi si trovano nell'ambito, vedere Usare le opzioni per modificare le funzioni di un comando.
<shelvesetname> Specifica un nome in base al quale è possibile recuperare il set di scaffali dal server Azure DevOps. È possibile specificare una combinazione esistente di shelvesetname e owner, ma solo se /replace è specificato anche .

È necessario specificare un valore per questo parametro.
<owner> Identifica il proprietario corrente o previsto del set di scaffali in base al nome utente. Per impostazione predefinita, all'utente corrente viene assegnata la proprietà del set di scaffali, se non ne viene specificata una.
<username> Fornisce un valore all'opzione /login . È possibile specificare un valore di nome utente come DOMAIN\username o username.
<TeamProjectCollectionUrl> URL della raccolta di progetti che contiene i file o le cartelle che si desidera eliminare, ad esempio http://myserver:8080/tfs/DefaultCollection/.

Opzioni

Opzione Descrizione
/new Lo stato selezionato di ogni modifica in sospeso, come illustrato nella finestra di dialogo Archiviazione di Visual Studio, il commento, gli elementi di lavoro associati, le note di archiviazione e il motivo dell'override dei criteri di archiviazione vengono archiviati nel computer di sviluppo come modifiche in sospeso fino a quando non vengono archiviate. L'opzione /new cancella i metadati di archiviazione prima di eseguire l'archiviazione.
/move Rimuove le modifiche in sospeso dall'area di lavoro dopo che l'operazione shelve ha avuto esito positivo.
/replace Sostituisce il set di scaffali esistente con lo stesso nome e proprietario di quello specificato.
/delete Elimina il set di scaffali specificato. Solo l'opzione /server può essere combinata con questa opzione. Se non si include l'opzione /noprompt , viene visualizzato un messaggio di conferma quando viene specificata l'opzione /delete .
/comment Aggiunge un commento specificato che descrive le modifiche shelved.
/recursive Scaffale tutti gli elementi nella cartella degli scaffali specificata, nelle relative sottocartelle e in tutti gli elementi presenti, se l'oggetto itemspec specificato è una cartella.
/noprompt Elimina eventuali richieste di input da parte dell'utente.
/validate Questa opzione consente di selezionare la casella di controllo Valuta criteri e note di archiviazione prima dell'archiviazione nella finestra di dialogo Shelve - File di origine all'apertura. Quando la casella di controllo di convalida è selezionata, la finestra di dialogo valuta i criteri di archiviazione e verifica che le note di archiviazione richieste siano state compilate. Questa opzione è utile quando le modifiche vengono consegnate per la revisione e l'archiviazione da parte di un altro utente. Non valido se combinato con /noprompt.
/login Specifica il nome utente e la password per autenticare l'utente con Azure DevOps Server.
/collection Specifica la raccolta di progetti.

Osservazioni:

Il shelve comando dell'utilità della riga di comando esegue il tf backup delle modifiche in sospeso, un elenco di elementi di lavoro associati, note di archiviazione in corso e commenti in un insieme di scaffali nel server Azure DevOps. Un set di scaffali è molto simile a un insieme di modifiche che non viene eseguito il commit nel server. Come un insieme di modifiche, un insieme di scaffali può essere recuperato dal server in un'area di lavoro locale da qualsiasi utente che dispone di autorizzazioni sufficienti.

L'archiviazione è un'alternativa al controllo delle modifiche in sospeso che non sono state testate sufficientemente. Usare lo sviamento quando si vuole interrompere il lavoro per:

  • Condividere un set di file di lavoro locali con un altro sviluppatore o tester senza controllare le modifiche apportate al server di controllo della versione.

  • Riservare temporaneamente un gruppo di modifiche in sospeso senza eseguirne l'archiviazione, in modo da poter lavorare su un problema con priorità più alta. Dopo aver completato il lavoro sull'attività con priorità alta, è possibile ripristinare le modifiche di cui è stato eseguito il salvataggio tramite il comando Unshelve.

Se si include l'opzione /move , il comando esegue il shelve rollback di ogni revisione del file di cui è stata eseguita la revisione nell'area di lavoro di base che è l'ultima versione recuperata dal server all'area di lavoro corrente. In particolare, per tutti gli elementi che si stalvono, l'opzione /move :

  • Undo Usa per annullare le modifiche che sono state eliminate. I file aggiunti in sospeso vengono eliminati dall'area di lavoro.

  • Recupera le versioni dell'area di lavoro di base di tutti i file per cui esistono edizioni in sospeso dal server nell'area di lavoro corrente.

  • Contrassegna tutti gli elementi nell'area di lavoro corrente di sola lettura.

Se si include l'opzione /delete , TFVC rimuove definitivamente il set di scaffali specificato dal server Azure DevOps.

Per altre informazioni su come usare l'utilità della tf riga di comando, vedere Usare i comandi di controllo della versione di Team Foundation.

Esempi

L'esempio seguente crea un nuovo insieme di scaffali nel server Azure DevOps denominato Reflector_BuddyTest, assegna la proprietà all'utente Pat, restituisce tutti gli elementi nell'area di lavoro corrente alla versione più recente scaricata durante l'ultima get operazione e imposta uno stato di sola lettura:

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

Nell'esempio seguente il set di scaffali new-feature esistente viene eliminato dal server, viene creato un nuovo set di scaffali con tale nome e vengono mantenute tutte le modifiche in sospeso nell'area di lavoro corrente:

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

Nell'esempio seguente viene creato un insieme di scaffali denominato HelloWorld_TestMe che include tutte le modifiche in sospeso a tutti i file .cs nella cartella di lavoro C:\projects e nelle relative sottocartelle:

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

Nell'esempio seguente vengono eliminati gli HelloWorld_24 scaffali:

c:\projects> tf shelve HelloWorld_24 /delete