2011-02-06 10 views
6

So che git diff --word-diff=color mostra una parola diff tra l'albero di lavoro e HEAD, ma esiste un modo per ottenere lo stesso tipo di output con git log?Si può ottenere un word-diff con `git log`?

+0

quale versione di git stai usando? Nella versione 1.5.5.6, 'git diff --color-words rev1..rev2' fornisce solo l'output colorato previsto. Se provo 'git diff --word-diff = color rev1..rev2' mostra l'uso di git-diff. – yasouser

+0

Potrebbe essere necessario scrivere un piccolo script - Esegui 'git log' in modo che stampi gli SHA1s, quindi esegua l'iterazione di quegli SHA1 e faccia' git diff --word-diff = color $ SHA1^$ SHA1 '. Quindi ovviamente potresti assegnare un alias git a quello. – MatrixFrog

risposta

9

Che dire di --color-words? Inoltre, in qualche modo devi attivare il diff.

git log --color-words -p 

mi mostra una specie di diff colorata.

+0

Che emette la linea diff, non una parola diff – dan

+0

Su 1.7.1 e con le mie impostazioni (niente diff-related, a parte forse 'color.ui = auto 'emette una parola diff.) Naturalmente solo quando la fonte contiene la parola differenze (= differenze più piccole di tutte le linee aggiunte/rimosse). –

+0

OK, funziona. – dan

1

OK penso ho preso a lavorare con

git log -m -p --word-diff=plain 
+0

Questo mi dà un errore: 'fatale: argomento non riconosciuto: --word-diff = plain'. Qual è la tua versione git ('git --version')? –

+0

git versione 1.7.3.2. Ma sulla mia macchina Linux, che attualmente ha 1.7.0.4, ottengo lo stesso errore. – dan

+0

Quindi sembra che abbiano aggiunto il supporto per '--word-diff' a' git log' tra queste versioni (il che ha senso, poiché l'opzione era già possibile per 'git diff'). –

Problemi correlati