Diffare i diff
git range-diff (introdotto in Git 2.19) confronta due range di commit, abbinandoli per similitudine e mostrando le modifiche tra le versioni. E indispensabile quando si revisionano reroll di serie di patch.
Invocazione base
git range-diff main..topic-v1 main..topic-v2
git range-diff topic-v1...topic-v2
git range-diff origin/main...HEAD
Leggere l'output
=commit invariato.!commit modificato — seguito dall'inter-diff.<commit solo nel primo range.>commit solo nel secondo range.
Uso pratico: review pre-merge
git range-diff @{u}...HEAD
Nelle cover letter
git range-diff main..topic-v1 main..topic-v2 >> out/v2/0000-cover-letter.patch
Tuning
git range-diff --creation-factor=70 main..a main..b
git range-diff --no-color-moved main..a main..b
git range-diff --left-only main..a main..b
Errori comuni
Confrontare attraverso basi diverse senza accorgersene. Leggere male = come "identico" — significa equivalente per contenuto.