2012-04-25 16 views
5

Viniendo del mundo de SVN, esto fue muy fácil: 1) Haz la fusión y obtén un conflicto. SVN le proporciona los archivos conflictivos en la copia de trabajo. 2) resuélvalos de la forma que lo necesite (utilizando cualquier herramienta externa si es necesario). 3) "svn resolved" para marcar el conflicto como resuelto. 4) check in (o continuar trabajando, etc.).¿Cómo puedo resolver conflictos manualmente y marcarlos como resolver cuando uso TFS?

Ahora con TFS y Visual Studio (2010), las únicas opciones que parece que tenemos son: - -> Fusionar en la herramienta de combinación TFS (solo archivos de texto). -> Para archivos que no son de texto, tome el archivo de la rama de origen (sobrescribir el archivo de bifurcación de destino) o mantenga el archivo de bifurcación de destino (ignore el archivo de bifurcación de origen).

Necesito poder resolver conflictos para algunos de mis tipos de archivos usando herramientas externas (por ejemplo, Erwin) y luego marcar el conflicto como resuelto.

He intentado resolver el conflicto, colocando el nuevo archivo en el espacio de trabajo del sistema de archivos de la rama de destino (es decir, la copia de trabajo) y usando "tf resolve/auto: DeleteConflict". Eso no ayudó. El archivo local resuelto/consolidado fue completamente ignorado cuando finalmente compré la fusión.

¡Seguramente TFS/VS puede hacer esto!

¡Cualquier ayuda realmente sería apreciada!

Gracias.

+0

Como complemento de la respuesta de tbergstedt [este blog] (http://blogs.msdn.com/b/jmanning/archive/2006/02/20/diff-merge-configuration-in-team-foundation-common- command-and-argument-values.aspx) tiene un desglose completo de cómo llamar desde TFS a herramientas de fusión de terceros. Si puede llamar a ERwin desde la línea de comandos, podrá invocarlo desde TFS –

+0

Gracias por esa ventaja, pero alas ERwin no parece soportar ningún argumento de línea de comando. La otra herramienta que necesito usar ciertamente no. ¿Alguna otra idea, por favor? –

Respuesta

3

Puede configurar reglas específicas para Compare and Merge en Visual Studio. Se encuentra en Herramientas-> Opciones-> Control de fuente-> Visual Studio Team Foundation Server. Elija Configure las Herramientas del usuario ..., y desde allí puede seleccionar cualquier herramienta externa para usar en sus operaciones.

Puede utilizar filtros de archivos para definir cualquier número de reglas y añadir aquí por la operación "Merge" cualquier herramienta personalizada:
**enter image description here**

+0

La primera herramienta que he intentado configurar (ERwin) no funciona con esto. Estoy seguro de que la otra herramienta que también necesito usar tampoco funcionará con este mecanismo. –

+0

¿Hay alguna forma de resolver manualmente el conflicto como en SVN, o es la ÚNICA forma de resolver un conflicto mediante el diálogo de fusión de resolución de conflictos (o más adelante en "Resumir resolución de conflictos")? –

+0

¿Por qué no funciona? ¿No hay soporte para línea de comando? –

1

vez que tenga el contenido que desea en el disco (después de forma manual utilizando la herramienta de combinación) en lugar de ejecutar "tf resolve/auto: DeleteConflict", ejecute "tf resolve/auto: AcceptMerge". Esto le dice a TFS que acepte el contenido que está en el disco como la resolución de la fusión.

+0

¿De verdad? Eso no está documentado en los documentos que he visto. ¿Dónde encontraste eso? Voy a tratar de salir. –

+0

En realidad, aparece en las páginas de Visual Studio 2005 en MSDN, pero no en las páginas de 2010. Estoy usando 2010. Te dejaré saber si esto funciona o no. –

+0

Derecha, esto ("/ auto: AcceptMerge") se ha intentado ahora. ¡No funcionó! Este fue el mensaje de error: Los archivos binarios no se pueden combinar a menos que se especifique una sobrescritura de codificación. A continuación, aparece un mensaje sobre el origen y el objetivo que tienen cambios. Es decir. un conflicto (!!). ¿Alguna gente de ideas? –

Cuestiones relacionadas