Se arrestare il processo non è sufficiente, uccidere la shell stessa (in cui è stato lanciato il git diff
) potrebbe essere più efficace.
Vedi anche Git Diff with Vimdiff
Non essendo pronto ad andare tutta velocità nel usando vimdiff
(io sono solo nuovi ad esso), ho messo il seguente in 'gitvimdiff
'.
Il risultato è che posso utilizzare vimdiff
per esaminare git-diff eseguendo 'gitvimdiff
', ma una normale chiamata di 'git diff
' si comporta come sono abituato.
#!/bin/sh
if [ -n "${GIT_EXTERNAL_DIFF}" ]; then
[ "${GIT_EXTERNAL_DIFF}" = "${0}" ] ||
{ echo “GIT_EXTERNAL_DIFF set to unexpected value” 1>&2; exit 1; }
exec vimdiff “$2″ “$5″
else
GIT_EXTERNAL_DIFF=”${0}” exec git –no-pager diff “[email protected]”
fi
Ma se si vuole ancora il modificato git diff
, un git status
potrebbe aiutare prima di lanciarlo;)
e si può impostare una funzione per ottenere il vecchio git diff
comportamento in caso di necessità:
Ho ancora accesso al comportamento predefinito git diff con il flag --no-ext-diff
. Ecco una funzione che ho messo nel mio file di configurazione di bash:
function git_diff() {
git diff --no-ext-diff -w "[email protected]" | vim -R -
}
--no-ext-diff
: per evitare usando vimdiff
-w
: ignorare gli spazi
-R
: per avviare Vim in sola lettura modalità
-
: per rendere vim agire come un cercapersone
Questo è un problema meraviglioso avere :) – vfclists