Condividi tramite


Comando Destroy (controllo della versione di Team Foundation)

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

Visual Studio 2019 | Visual Studio 2022

Usare il tf destroy comando per eliminare definitivamente o eliminare definitivamente i file controllati dalla versione da controllo della versione di Team Foundation (TFVC).

Nota

L'eliminazione di un repository TFVC all'interno di Azure Devops non è consentita dopo la creazione. Il comando tf destroy eliminerà definitivamente solo i file o le cartelle controllati dalla versione, ma non eliminerà il repository TFVC. Verrà comunque visualizzato nell'elenco delle opzioni con il messaggio eliminato.

A volte è necessario pulire i sistemi di controllo della versione. Ad esempio, se alcuni file sono infettati da un virus del computer, è necessario rimuoverli definitivamente dal controllo della versione. Non distruggere i file ancora necessari. L'azione di eliminazione non può essere annullata.

Prima di eseguire tf destroy senza l'opzione /keephistory , eliminare prima di tutto i file da eliminare. Per altre informazioni, vedere Eliminare file e cartelle dal controllo della versione.

Dopo aver eliminato i file, è possibile sincronizzare il warehouse TFVC. In caso contrario, il magazzino non verrà sincronizzato con gli articoli eliminati.

Prerequisiti

Per usare il destroy comando, è necessario appartenere al gruppo di sicurezza team Foundation Amministrazione istrators. Per altre informazioni, vedere Autorizzazioni tfvc predefinite.

Sintassi

tf destroy [/keephistory] <itemspec1>[;<versionspec>][<itemspec2>...<itemspecN>] 
[/stopat:<versionspec>] [/preview] [/startcleanup] [/noprompt] [/silent] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]]

Parametri

Argomenti

Argomento

Descrizione

<itemspec1> [<itemspec2>...<itemspecN>]

Specifica il percorso del server del file o della cartella da eliminare definitivamente. Usare più itemspec valori per eliminare più elementi. Ad esempio: tf destroy $/TeamProject1 $/teamProject2 $/TeamProject3.

I percorsi locali non sono supportati.

<versionspec>

Fornisce una versione, C58 ad esempio per le /keephistory opzioni o /stopat . I valori consentiti sono date, tipo un insieme di modifiche specifico. Per altre informazioni su come TFVC analizza una specifica di versione per determinare quali elementi si trovano all'interno del relativo ambito, vedere Usare i comandi di controllo della versione di Team Foundation.

<username>

Fornisce un valore all'opzione /login . È possibile specificare un username valore come DOMAIN\username o username.

TeamProjectCollectionUrl

URL della raccolta di progetti che contiene file che si desidera eliminare definitivamente, ad esempio http://myserver:8080/tfs/DefaultCollection.

Opzioni

Opzione

Descrizione

/keephistory

Facoltativo. Specifica che la cronologia di un file viene mantenuta anche quando il relativo contenuto viene eliminato definitivamente. Questa opzione non può essere specificata con l'opzione /preview .

/stopat

Facoltativo. Può essere utilizzato solo se /keephistory è specificato anche.

Specifica la versione del file e i file che seguono successivamente, per cui viene mantenuta la cronologia.

La versione predefinita per /stopat è tip (T) per la versione archiviata più recente di un elemento.

Non è possibile usare i valori dell'etichetta o dell'area di lavoro versionspec per specificare un elemento per l'opzione /stopat .

/preview

Visualizza i file che verrebbero eliminati definitivamente nella finestra del prompt dei comandi. Quando tf destroy viene eseguito in modalità di anteprima, i file non vengono effettivamente eliminati definitivamente.

Nota

Il testo nella finestra del prompt dei comandi visualizza la parola Destroyed con ogni file che verrebbe eliminato definitivamente. Tuttavia, il file non viene eliminato definitivamente quando viene usata l'opzione /preview .

/startcleanup

Forza l'avvio del processo di pulizia dei metadati tfvc subito dopo il completamento dell'eliminazione. Se l'utente non specifica /startcleanup, il processo di pulizia dei metadati eliminati viene generato quando la manutenzione del database pulisce tutti i file a cui non fa più riferimento Azure DevOps Server. Per impostazione predefinita, la pulizia è pianificata per l'esecuzione ogni cinque giorni. Sette giorni dopo la pulizia dei metadati tfvc, il contenuto viene eliminato da un altro processo di pulizia. Per impostazione predefinita, questo processo di pulizia del contenuto viene eseguito una volta al giorno.

/noprompt oppure /i

Specifica che la distruzione dei file non è interattiva. /i è un alias per /noprompt.

/silent

Specifica che, quando si eliminano file o cartelle, l'output non viene scritto nella finestra del prompt dei comandi.

/login

Specifica il nome utente e la password per autenticare l'utente con TFVC.

/collection

Specifica la raccolta di progetti.

Osservazioni:

Quando si usano tf destroy per eliminare definitivamente i file di controllo della versione, il livello applicazione di TFVC riceve la richiesta di eliminazione definitiva e verifica se si è membri del gruppo di sicurezza Team Foundation Amministrazione istrators. Se non si è membri, il sistema visualizza una finestra di dialogo di messaggio di errore che indica che non si dispone di autorizzazioni sufficienti per eseguire l'operazione.

Dopo che il sistema verifica le autorizzazioni, esegue il comando destroy. Questo comando elimina tutti i riferimenti ai file, gli scaffali e le modifiche in sospeso. L'effettiva distruzione dei file, ovvero un'eliminazione permanente, avviene alla successiva pulizia del contenuto a cui non fa più riferimento Azure DevOps Server. È anche possibile specificare l'opzione /startcleanup per pulire i file immediatamente dopo tf destroy l'esecuzione.

Se si esegue tf destroy senza specificare /i e /preview, nel sistema viene visualizzata una richiesta o No per ogni filespec valore. In caso contrario, è possibile specificare Sì a Tutti.

  • Se non si specifica /keephistory, viene richiesto un testo interattivo che avvisa delle modifiche in sospeso, se presenti. Il testo interattivo punta a /preview se si desidera ottenere altre informazioni sulle modifiche.

  • Se si specifica /keephistory, viene richiesto anche Sì, No o Sì a Tutto il testo. Se si seleziona Sì o a tutti, viene avviato il processo di distruzione e i percorsi del server per gli elementi eliminati vengono visualizzati nella finestra del prompt dei comandi.

Destroyed: <serverItem1>
Destroyed: <serverItem2>
Destroyed: ...

Se è stato specificato il versionspec valore come tip, i percorsi del server visualizzati nella finestra del prompt dei comandi includono ID di eliminazione. Ad esempio, Destroyed: $/Test1/MyProject;X123 potrebbe essere visualizzato nella finestra del prompt dei comandi.

Se si usa l'opzione /preview , i file non vengono eliminati definitivamente, ma il testo della riga di comando visualizza i file che verrebbero eliminati definitivamente. Ad esempio, se si immette tf destroy /preview $/Test1/MyProject/MyProject/Program.cs nella riga di comando, nella finestra di comando viene visualizzato il testo seguente:

Destroyed: $/Test1/MyProject/MyProject/Program.cs

Tuttavia, il file non viene eliminato definitivamente perché è stata usata l'opzione /preview .

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

Effetti di /keephistory su altre operazioni di controllo della versione

Se si specifica l'opzione /keephistory per conservare la cronologia dei file eliminati definitivamente, i file vengono considerati eliminati definitivamente dalle operazioni TFVC seguenti:

  • Modificare il contenuto. Se si tenta di modificare il contenuto di un file eliminato, ad esempio modifica o ramo, il sistema genera un messaggio di errore che indica che il contenuto è stato eliminato definitivamente.

  • Branch, merge o unshelve. Se si tenta di creare rami, unire o rimuovere elementi eliminati definitivamente, il sistema genera un messaggio di errore che indica che il contenuto degli elementi è stato eliminato definitivamente.

Eliminare definitivamente gli elementi eliminati in precedenza

Se un elemento è già stato eliminato, viene associato un ID di eliminazione e viene restituita una modifica del nome file.

La ricerca del codice non gestisce tf destroy le notifiche, quindi l'uso tf destroy di per i repository TFVC non eliminerà automaticamente i file dall'indice di ricerca. Di conseguenza, questi file vengono visualizzati nei risultati della ricerca del codice. Per evitare questi scenari di file fantasma, eliminare i file prima dell'operazione tf destroy .

Esempi

Nell'esempio seguente viene eliminato definitivamente il file a.cs.

tf destroy $/proj/pi/a.cs

Nell'esempio seguente viene eliminata una cartella, aFolder:

tf delete $/MyTeamProject/aFolder

Per eliminare definitivamente l'elemento eliminato aFolder, immettere nella riga di comando:

tf destroy $/MyTeamProject/aFolder;x123

dove x123 è l'ID di eliminazione.