L'output di qualsiasi comando 'git diff' può essere visualizzato in uno strumento GUI utilizzando il comando 'git difftool'.
In primo luogo, il comando 'diff' che vogliamo: Visualizzare le diff accumulati introdotte da ogni commettono su 'mybranch' quanto discostato dal 'master' con:
git diff master...mybranch
o
git diff master...HEAD
Nota questo esclude qualsiasi commit che sia avvenuto sul master nel frattempo, che è probabilmente quello che vuoi se stai rivedendo mybranch.
Se mybranch è il tuo attuale capo, allora questo può essere abbreviato:
git diff master...
Git alimenterà l'output di comandi diff in uno di una lista di circa otto strumenti grafici noti, utilizzando 'git difftool'. Io uso kdiff3 su OSX, e in passato l'ho usato felicemente anche su Linux. Preferisco kdiff3 perché mi consente di eseguire le unioni a 3 vie quando richiesto e mi consente di modificare manualmente l'output dell'unione e di selezionare solo gli hunks da utilizzare.
Prima di installare kdiff3, quindi aggiungere un collegamento simbolico ad esso sul PATH. Per me, che era:
ln -s /Applications/kdiff3.app/Contents/MacOS/kdiff3 /usr/local/bin/kdiff3
poi dire git che si desidera utilizzare KDiff3 come strumento diff GUI:
git config --global merge.tool kdiff3
quindi visualizzare i tuoi cambiamenti in essa:
git difftool master...
fonte
2012-08-21 10:25:29
Sospetto che non è necessario mostrare le differenze tra i due rami, perché se vengono effettuati più commit sul master tra l'unione e la revisione, si desidera che vengano esclusi. Probabilmente è meglio mostrare solo le modifiche introdotte sul ramo, escludendo le eventuali modifiche introdotte sul master. Quindi puoi unire in qualsiasi momento, invece di doverlo fare immediatamente prima di rivederlo. –