example - Viendo todos los `git diffs` con vimdiff
git difftool example (3)
Configuro git diff
para envolverlo en vimdiff, usando " Git Diff with Vimdiff " como guía, y está funcionando como se espera a menos que haya muchos archivos con cambios.
Cuando hay varios archivos con cambios y ejecuto git diff
, abre el primer archivo y, después de salir de la primera instancia de vimdiff, aparece el siguiente mensaje:
external diff died, stopping at filename
Este es un comportamiento completamente diferente al que estoy acostumbrado. Tenía una configuración similar en el pasado con SVN y, cuando difería en varios archivos, revisaba el primer archivo, luego escribía y :wq
usando :wq
y se :wq
el siguiente archivo con diferencias.
Este no es el caso con Git. Intenté :n[ext]
, pero al hacerlo no llene la ventana izquierda con el archivo original para que pueda diferir de la versión modificada.
Puedes probar git difftool
, está diseñado para hacer esto.
Primero, necesitas configurar la herramienta diff en vimdiff
git config diff.tool vimdiff
Luego, cuando quiera dif, simplemente use git difftool
lugar de git diff
. Funcionará como esperabas.
Git accepts kdiff3, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff, ecmerge,
and opendiff as valid diff tools. You can also set up a custom tool.
git config --global diff.tool vimdiff
git config --global diff.tool kdiff3
git config --global diff.tool meld
git config --global diff.tool xxdiff
git config --global diff.tool emerge
git config --global diff.tool gvimdiff
git config --global diff.tool ecmerge
git config --global diff.tool vimdiff
git config --global difftool.prompt false
git config --global alias.d difftool
Escribir git d
produce el comportamiento esperado, escribiendo :wq
en vim ciclos al siguiente archivo en el conjunto de cambios.