2008-09-09 16 views
53

Crear un parche es muy fácil en SubVersion, con Tortoise, haga clic derecho y seleccione Crear parche. Pero por mi vida, no puedo encontrar esta funcionalidad en TFS. es posible?Crear un parche con TFS

Si no es así, ¿cuál es la forma estándar de enviar parches en proyectos alojados en TFS de código abierto (a la CodePlex)?

Respuesta

48
tf diff /shelveset:shelveset /format:unified 

Editar: Esta escribe en la salida estándar. Puede canalizar la salida a un archivo.

Para obtener más opciones, consulte Difference Command.

+5

¿Puedes explicarme un poco más? 1. ¿Cómo aplicaría este parche? 2. Además, si el proyecto es de solo lectura para el parcheador, no puede crear un conjunto de estantes, ¿o sí? –

+0

Hay un programa UNIX estándar llamado "parche" que se aplica diffs unificados para árboles de origen. Estoy seguro de que podrías encontrar una implementación de Windows, o podrías usar Cygwin. –

+0

@Doron Esto muestra todas las diferencias entre los cambios aplazados y la carpeta de espacio de trabajo actual en un formato similar a: http://hg.shrinkrays.net/spruce/changeset/0d00e3c15e2c/raw/spruce-0d00e3c15e2c.diff –

2

Como TFS no admite archivos de parche de forma nativa, lo más común que veo que las personas hagan en CodePlex es simplemente comprimir los archivos modificados y cargar el archivo zip. El coordinador del proyecto hace una diferencia con su propio pago.

Sin embargo, dado que CodePlex también es compatible con TortoiseSVN, cada vez más personas lo utilizan para crear sus archivos de parche.

0

Escribí una publicación en el blog sobre un problema similar donde utilicé el comando TF.exe y 7Zip en create a TFS patch file que luego podría aplicarse en otro servidor TFS o espacio de trabajo. Publiqué los scripts de Powershell en Github, que se pueden usar para comprimir los cambios pendientes en un área de trabajo y luego aplicarlos a un servidor diferente. Tendría que modificarse para usar un conjunto de cambios en lugar de cambios pendientes, pero eso no debería ser demasiado difícil de lograr.

+2

Este script usa todo el archivo, no las líneas diferidas. Más de una xcopy controlada – JJS

Cuestiones relacionadas