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 controllo della versione di Team Foundation (TFVC) shelve
comando 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 desidera utilizzare il comando
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 il itemspec per determinare quali elementi si trovano nell'ambito, vedere Usare le opzioni per modificare il modo in cui un comando funziona. |
<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 viene specificata anche /replace .È 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 archiviare, ad esempio http://myserver:8080/tfs/DefaultCollection/ . |
Opzioni
di 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, le relative sottocartelle e tutti gli elementi presenti se il itemspec specificato è una cartella. |
/noprompt |
Elimina eventuali richieste di input da parte dell'utente. |
/validate |
Questa opzione seleziona la casella di controllo /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 comando shelve
dell'utilità della riga di comando tf
esegue il 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 sul 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à elevata, è possibile ripristinare le modifiche scompigliete usando il comando Unshelve.
Se si include l'opzione /move
, il comando shelve
esegue il rollback di ogni revisione del file versione dell'area di lavoro di base l'ultima versione recuperata dal server all'area di lavoro corrente. In particolare, per tutti gli elementi che si stalvono, l'opzione /move
:
Usa
Undo
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 riga di comando tf
, 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 operazione di get
e imposta uno stato di sola lettura:
c:\projects> tf shelve Reflector_BuddyTest;Pat /move
Nell'esempio seguente viene eliminato l'insieme di scaffali esistente new-feature
dal server, viene creato un nuovo insieme 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 C:\projects cartella di lavoro e nelle relative sottocartelle:
c:\projects> tf shelve HelloWorld_TestMe c:\projects\*.cs /recursive
Nell'esempio seguente viene eliminato l'insieme di scaffali HelloWorld_24
:
c:\projects> tf shelve HelloWorld_24 /delete