2012-09-20 10 views
5

¿Es posible usar la herramienta diff en visual studio 2012 junto con git? Usando "devenv/diff fileA fileB" puedo abrir una diferencia entre dos archivos, pero también puedo agregar un tercero (archivo base), teniendo 3 vistas una al lado de la otra.git merge usando la herramienta diff vs2012

Actualmente estoy usando TortoiseGit y BeyondCompare.

Respuesta

4

Git se puede configurar para usar cualquier herramienta de diferencias genérica, no solo la que conoce de fábrica. Para llamar a una herramienta diff genérica, configure la variable de configuración diff.tool en un alias de herramienta de diferencia personalizada, digamos "vs2012", escribiendo git config --global diff.tool vs2012 y cree una variable correspondiente cmd para ese alias de herramienta diff digitando git config --global difftool.vs2012.cmd <path_to_devenv> -diff "$LOCAL" "$REMOTE". Tenga en cuenta que estoy usando un guión en lugar de una barra inclinada para que la opción "diff" solucione los problemas de creación de rutas de MSYS y, afortunadamente, devenv también acepta guiones para las opciones de línea de comandos. Ahora debería poder llamar a la herramienta diff de VS2012 escribiendo git difftool.

Para la fusión, supongo que tengo que decepcionarlo, devenv /diff solo acepta exactamente dos archivos.

+0

Lo siento pero esto simplemente no funciona. Los argumentos en la línea de comando no entran en el archivo .gitconfig y 'git difftool -t vs2012' simplemente no funciona. –

+0

Parece que algo ha cambiado en Git 1.8.0 que requiere citas diferentes (dependiendo del shell que esté utilizando). Pruebe esto en "Git Bash": 'git config --global difftool.vs2012.cmd" -diff \ $ LOCAL \ $ REMOTE "'. – sschuberth