Compartir a través de


Comando Destroy (Control de versiones de Team Foundation)

Azure DevOps Services | Azure DevOps Server 2022: Azure DevOps Server 2019

Visual Studio 2019 | de Visual Studio 2022

Use el comando tf destroy para destruir, o eliminar permanentemente archivos controlados por versiones de Team Foundation Version Control (TFVC).

Nota

No se permite eliminar un repositorio TFVC dentro de Azure Devops una vez creado. El comando tf destroy solo destruirá, o eliminará permanentemente archivos o carpetas controlados por versiones, pero no eliminará el repositorio TFVC. Seguirá apareciendo en la lista de opciones con el mensaje eliminado.

A veces tiene que limpiar los sistemas de control de versiones. Por ejemplo, si algunos archivos están infectados con un virus informático, debe eliminarlos permanentemente del control de versiones. No destruya los archivos que todavía son necesarios. No se puede revertir la acción de destrucción.

Antes de ejecutar tf destroy sin la opción /keephistory, elimine primero los archivos que desea destruir. Para obtener más información, vea Eliminar archivos y carpetas del control de versiones.

Después de eliminar los archivos, puede sincronizar el almacenamiento de TFVC. De lo contrario, el almacén no se sincronizará con los elementos destruidos.

Prerrequisitos

Para usar el comando destroy, pertenezca al grupo de seguridad Administradores de Team Foundation. Para obtener más información, consulte permisos predeterminados de TFVC.

Sintaxis

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

Parámetros

Argumentos

de argumentos de

descripción

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

Especifica la ruta de acceso del servidor del archivo o carpeta que se va a destruir. Use varios valores de itemspec para eliminar varios elementos. Por ejemplo, tf destroy $/TeamProject1 $/teamProject2 $/TeamProject3.

No se admiten rutas de acceso locales.

<versionspec>

Proporciona una versión como C58 para las opciones de /keephistory o /stopat. Los valores permitidos son date, tipo un conjunto de cambios específico. Para obtener más información sobre cómo TFVC analiza una especificación de versión para determinar qué elementos están dentro de su ámbito, consulte Usar comandos de control de versiones de Team Foundation.

<username>

Proporciona un valor a la opción /login. Puede especificar un valor de username como DOMAIN\username o username.

TeamProjectCollectionUrl

Dirección URL de la colección de proyectos que contiene archivos que desea destruir, por ejemplo, http://myserver:8080/tfs/DefaultCollection.

Opciones

de opción de

descripción

/keephistory

Opcional. Especifica que el historial de un archivo se conserva incluso cuando se destruye su contenido. Esta opción no se puede especificar con la opción /preview.

/stopat

Opcional. Solo se puede usar si también se especifica /keephistory.

Especifica la versión del archivo para el archivo y los archivos que siguen a partir de entonces, para los que se conserva el historial.

La versión predeterminada de /stopat es tip (T) para la versión de entrada más reciente de un elemento.

No puede usar valores de etiqueta o área de trabajo versionspec para especificar un elemento para la opción /stopat.

/preview

Muestra los archivos que se destruirían en la ventana del símbolo del sistema. Cuando tf destroy se ejecuta en modo de vista previa, los archivos no se destruyen realmente.

Nota

El texto de la ventana del símbolo del sistema muestra la palabra destruidos con cada archivo que se destruiría. Sin embargo, el archivo no se destruye realmente cuando se usa la opción /preview.

/startcleanup

Obliga al proceso de limpieza de metadatos de TFVC a iniciarse inmediatamente después de que finalice la eliminación. Si el usuario no especifica /startcleanup, el proceso de limpieza de metadatos destruido se produce cuando el mantenimiento de la base de datos limpia todos los archivos a los que ya no hace referencia Azure DevOps Server. De forma predeterminada, la limpieza está programada para ejecutarse cada cinco días. Siete días después de limpiar los metadatos de TFVC, otro proceso de limpieza elimina el contenido. De forma predeterminada, este proceso de limpieza de contenido se ejecuta una vez al día.

/noprompt o /i

Especifica que la destrucción de archivos no es interactiva. /i es un alias para /noprompt.

/silent

Especifica que, al destruir archivos o carpetas, la salida no se escribe en la ventana del símbolo del sistema.

/login

Especifica el nombre de usuario y la contraseña para autenticar al usuario con TFVC.

/collection

Especifica la colección de proyectos.

Observaciones

Cuando se usa tf destroy para destruir archivos de control de versiones, el nivel de aplicación de TFVC recibe la solicitud de destrucción y comprueba si es miembro del grupo de seguridad de Administradores de Team Foundation. Si no es miembro, el sistema muestra un cuadro de diálogo de mensaje de error que indica que no tiene permisos suficientes para realizar la operación.

Una vez que el sistema comprueba los permisos, ejecuta el comando destroy. Este comando elimina todas las referencias de archivo, los conjuntos de estantes y los cambios pendientes. La destrucción real de archivos, que es una eliminación permanente, se produce la próxima vez que se limpie el contenido al que ya no hace referencia Azure DevOps Server. También puede especificar la opción /startcleanup para limpiar los archivos inmediatamente después de que se ejecute tf destroy.

Si ejecuta tf destroy sin especificar /i y /preview, el sistema muestra una consola o No solicitar cada valor de filespec. De lo contrario, puede especificar Sí en Todos los.

  • Si no especifica /keephistory, se le pedirá un texto interactivo que avisa de los cambios pendientes, si existen. El texto interactivo apunta a /preview si desea obtener más información sobre los cambios.

  • Si especifica /keephistory, también se le pedirá texto Sí, Noo Sí a Todo texto. Si selecciona o Sí en Todos los, se inicia el proceso de destrucción y las rutas de acceso del servidor a los elementos destruidos aparecen en la ventana del símbolo del sistema.

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

Si especificó el valor de versionspec como tip, las rutas de acceso del servidor que se muestran en la ventana del símbolo del sistema incluyen identificadores de eliminación. Por ejemplo, Destroyed: $/Test1/MyProject;X123 puede aparecer en la ventana del símbolo del sistema.

Si usa la opción /preview, los archivos no se destruyen, pero el texto de la línea de comandos muestra los archivos que se destruirían. Por ejemplo, si escribe tf destroy /preview $/Test1/MyProject/MyProject/Program.cs en la línea de comandos, la ventana de comandos muestra este texto:

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

Sin embargo, el archivo no se destruye realmente porque usó la opción /preview.

Para obtener más información sobre cómo usar la utilidad de línea de comandos de tf, consulte Usar comandos de control de versiones de Team Foundation.

Efectos de /keephistory en otras operaciones de control de versiones

Si especifica la opción /keephistory para conservar el historial de archivos destruidos, los archivos se tratan como destruidos por las siguientes operaciones de TFVC:

  • Cambiar el contenido. Si intenta cambiar el contenido de un archivo destruido, por ejemplo, editar o rama, el sistema emite un mensaje de error que indica que el contenido se ha destruido.

  • rama, combinación o eliminación de. Si intenta bifurcar, combinar o deshacer elementos destruidos, el sistema emite un mensaje de error que indica que se ha destruido el contenido de los elementos.

Destruir elementos eliminados anteriormente

Si ya se ha eliminado un elemento, se adjunta un identificador de eliminación y se produce un cambio de nombre de archivo.

La búsqueda de código no controla las notificaciones de tf destroy, por lo que el uso de tf destroy para repositorios tfVC no eliminará automáticamente los archivos del índice de búsqueda. Como resultado, estos archivos aparecen en los resultados de la búsqueda de código. Para evitar estos escenarios de archivos fantasma, elimine los archivos antes de la operación de tf destroy.

Ejemplos

En el ejemplo siguiente se elimina permanentemente el archivo a.cs.

tf destroy $/proj/pi/a.cs

En el ejemplo siguiente se elimina una carpeta, aFolder:

tf delete $/MyTeamProject/aFolder

Para destruir el elemento eliminado aFolder, escriba en la línea de comandos:

tf destroy $/MyTeamProject/aFolder;x123

donde x123 es el identificador de eliminación.