2010-03-17 14 views
16

¿Hay una manera fácil de comparar el árbol de archivos de un viejo git commit con el árbol de archivos de trabajo, en MELD?git-difftool: comparar el árbol de archivos completo usando meld?

git-difftool hace algo muy similar, pero no lo quiero hacer realidad cualquier diffing; el punto es que la herramienta a la que llama puede proporcionar una mejor interfaz para eso.

+1

ver también [versión más general] (http://stackoverflow.com/questions/1220309/git-difftool-open-all-diff-files-immediately-not- en-serie) de esta pregunta –

Respuesta

9

He probado esto en una versión reciente de meld y ahora está incorporada. Puede usarlo con meld < ruta del directorio > por lo que "meld". funciona para el directorio actual. Puede verificar una versión de git co [versión], luego git reset [versión]^y luego ejecutar "meld". para comparar cualquier versión con su versión anterior.

6

También encontré este problema molesto MELD git así que he hecho lo que permite una forma más cómoda de diffing compromete arbitrarias contra el árbol de trabajo o el área de ensayo. Puede encontrarlo en https://github.com/wmanley/git-meld.

+2

¿Cuál es la diferencia entre git-MELD y https://github.com/thenigan/git-diffall? Intenté ambos y tuve la impresión de que la funcionalidad es idéntica. – kynan

+0

@kynan: No git-funden le permiten usar diff directorio de la interfaz de usuario de MELD para ver los cambios en un compromiso, mientras que git-diffall abriría todas las diferenciaciones (en la interfaz de usuario dif)? – idbrii

+0

@pydave afaics ambos comprueban los árboles de las 2 revisiones para diferenciar directorios temporales y luego ejecutan un directorio diff en esos - no hay diferencia allí. – kynan

23

Con git > 1.7.11, el comando git difftool ahora admite directorios completos diferentes usando el comando --dir-diff. Esto se puede utilizar junto con meld:

$ git difftool --tool=meld --dir-diff [commit-to-diff-against] 
+0

Esta debe ser la respuesta aceptada. – melloc

Cuestiones relacionadas