¿Hay una manera de comparar dos ramas para las diferencias / versiones de archivos en VS2010?


¿Alguien sabe si hay una manera de comprobar si el código de la rama de hotfix de producción no es más nuevo que la rama principal a través de la herramienta diff de algún tipo? (hotfix1 vs thrunk)

\src
    \thrunk
    \releases
        \hotfix1

Estoy usando vs2010 con TFS, pero las ramas tienen muchos archivos, y todo lo que se me ocurrió fue comparar un archivo a la vez, al volver a especificar la ruta de destino de uno de ellos.

Author: Edward Thomson, 2011-06-09

7 answers

Usando la herramienta de línea de comandos tf.exe puede comparar dos revisiones de archivos arbitrarios, pero ambos tienen que estar en su espacio de trabajo.

Ver ayuda en línea en tf diff para detalles (y aquí para especificar versiones).

NB. En VS use Tools / Options | Source Control | Visual Studio Team Foundation Server/Configure User Tools para definir qué aplicación diff / merge usar (una búsqueda web encontrará la línea de comandos correcta para usar). Introducir .* para el tipo de archivo será se utiliza para todo sin un conjunto de herramientas más específico.

 4
Author: Richard,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-06-09 09:57:03

Puede hacer esto desde Visual Studio: si abre Team Explorer y va a Control de código fuente, puede comparar carpetas recursivamente (incluso las que no tiene en su espacio de trabajo).) Simplemente navegue a una de las ramas, haga clic derecho y seleccione Compare e ingrese la otra rama como destino.

 129
Author: Edward Thomson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-06-09 13:17:13

Usar la función "Comparar" como se mencionó anteriormente es genial, pero tener buenos filtros lo hace mucho más útil. De lo contrario, puede sobrecargarse con grandes cantidades de información.

Aquí están los filtros que estoy usando actualmente que funcionan muy bien para mí:

!debug\;!obj\;!bin\;!temp\;!*ReSharper*\;*.sln;*.*proj;*.config;*.cs;*.vb;*.bmp;*.GIF;*.JPG;*.png;*.ico;*.ini;*.resx;

Los primeros elementos eliminan algunas carpetas que probablemente desee excluir (debug, obj, bin, temp, Resharper cosas si lo está utilizando - y es muy recomendable que lo haga!). El resto son los archivos que yo encontrar útil para incluir en la búsqueda. Si hay otros tipos de archivos que desea ver, simplemente agréguelos al final de la lista.

 4
Author: Mick Bruno,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-10 22:36:06

En Visual Studio, en la barra de menú seleccione:

  1. Ver > > Otras ventanas > > Explorador de Control de código fuente
  2. Haga clic derecho en el elemento (carpeta, rama, archivo, etc.) >> Comparar...
  3. Introduzca el elemento con el que comparar en la Ruta de destino como se muestra a continuación

NOTA: Observe todas las diferentes opciones que tiene en esta pantalla.

introduzca la descripción de la imagen aquí

 3
Author: CodingYoshi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-06-23 21:17:46

Puede fusionar una rama en la otra sin confirmar. A continuación, puede ver todos los cambios en visual studio. Cuando hayas terminado solo tienes que restablecer todos los cambios (si no quieres fusionar).

 1
Author: Fl4v,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-05-06 13:47:15

En realidad no tienes que estar en el mismo espacio de trabajo para hacer comparaciones desde VS - o incluso ambos en TFS. 1 o ambos podrían estar en el sistema de archivos ("Ruta local..."in" Compare " dlg) o en TFS ("Server Path..."). La sección" Filtro " también es muy potente, para poder expandir/restringir los objetos de comparación por tipo de archivo.

 0
Author: user1172173,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-08-26 20:07:22

Puedes hacerlo fácilmente desde Visual Studio, pero si eres como yo y no quieres meterte en la rama local, también puedes hacerlo desde el sitio web de VSTS

  • vaya a la solicitud de extracción
  • seleccione la pestaña Archivos
  • seleccione el archivo que desea comparar (verá ...) que abrirá un menú
  • Ver historial
  • Encuentre el archivo que desea comparar
  • Seleccione una pestaña Comparar
  • Verá el número de confirmación en la parte superior que puede cambiar para comparar versiones de su archivo

No es tan difícil como suena,:)

 0
Author: Sebastian Castaldi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-12-14 21:30:25