git range-diff
Vergleicht zwei Versionen einer Commit-Serie
Der Befehl 'git range-diff' vergleicht zwei Versionen derselben Commit-Serie — typischerweise einen Branch vor und nach einem Rebase oder einer Review-Runde. Er ordnet jedem alten Commit seine neue Version zu und markiert ihn mit = (unverändert), ! (geändert, mit einem Diff der Diffs), < (nur in der alten Version) oder > (nur in der neuen). Reviewer sehen damit, was sich zwischen Versionen einer Patch-Serie geändert hat.
Syntax
git range-diff <base> <old-tip> <new-tip>
git range-diff <old-tip>...<new-tip>
git range-diff <old-range> <new-range>Beispiele
Nach einem Rebase
git range-diff main old featureAlte und neue Version des Branches, auf Basis main.
Symmetrische Form
git range-diff old...featureGit findet die Basis selbst.
Mit ORIG_HEAD
git range-diff ORIG_HEAD...HEADDirekt nach einem Rebase: vorher gegen nachher.
Workflow-Beispiele
git rebase mainRebase
git range-diff ORIG_HEAD...HEADVorher und nachher vergleichen
Fehlerbehebung
Alles erscheint als < und >
Ursache: Die Bereiche haben keine ähnlichen Commits
Prüfe Basis und Spitzen, die du angegeben hast
Tipps & Stolperfallen
Best Practices
- ✓Behalte einen Branch oder Tag auf der alten Version, bevor du eine geprüfte Serie umschreibst.
Häufige Fehler
- ✗Branches nach einem Rebase mit git diff vergleichen — das mischt alle Änderungen der neuen Basis hinein.
FAQ
Nein: es vergleicht Commit für Commit und ignoriert Änderungen aus der neuen Basis.