¿Hay un atajo para ver detalles de diff en un submodule de git en lugar de cometer hashs?

Si uno crea un submodule git con un submodule git submodule add [remote URL] y confirma en el submodule, git diff en el proyecto principal muestra algo así como

 diff - git a / validation-tools b / validation-tools
 índice 78208b2..8941219 160000
 --- a / validation-tools
 +++ b / validation-tools
 @@ -1 +1 @@
 -Subproyecto commit 78208b2e64422a85509f0462b944ef8fbde93f48
 + Comito de subproyecto 8941219dd4935e97a585295ec34fb190e601b7ab

Para ver lo diferente en el submodule uno tiene que cd y copyr los dos hashes como arguments para git diff o git difftool . Estoy buscando un atajo que evite la copy (y el cd si es posible).

Estoy usando git 2.11.0 en Ubuntu 17.04.

Puedes usar:

 git diff --submodule=diff 

Sin embargo, en la versión de Git que está utilizando (2.11), este command fallará si sus submodules tienen submodules nesteds dentro de ellos. (La versión 2.14.1 resuelve este problema , sin embargo).

Si, por alguna razón, no puede actualizar su Git y tiene submodules nesteds, puede intentar:

 git submodule foreach --recursive git diff --name-status