Commits zwischen Zeiträumen vergleichen
Jedes Repository enthält eine Vergleichsansicht, auf der Sie den Status Ihres Repositorys zwischen Branches, Tags, Commits, Zeiträumen und anderen Parametern vergleichen können. Die Vergleichsansicht stellt Ihnen dasselbe Diff-Tool bereit wie die Pull-Request-Ansicht.
Um die Vergleichsansicht aufzurufen, hängen Sie an den Pfad Ihres Repositorys /compare
an.
Um die Leistungsfähigkeit der Vergleichsfunktion zu demonstrieren, sehen wir uns die Vergleichsseite für einen Fork des Linguist-Repositorys an, der unter https://github.com/octocat/linguist/compare/master...octocat:master zu finden ist.
Jede Vergleichsansicht eines Repositorys enthält zwei Dropdownmenüs: base
(Basis) und compare
(Vergleichen).
Dabei sollte base
der Ausgangspunkt des Vergleichs sein, compare
der Endpunkt. Während eines Vergleichs können Sie die Punkte base
und compare
jederzeit ändern, indem Sie auf Edit (Bearbeiten) klicken.
Branches vergleichen
Am häufigsten kommt die Vergleichsfunktion beim Vergleich von Branches zum Einsatz, beispielsweise, wenn Sie einen Pull Request erstellen. Wenn Sie einen neuen Pull Request erstellen, werden Sie immer zur Branch-Vergleichsansicht geleitet.
Um Branches zu vergleichen, wählen Sie im Dropdownmenü compare
(Vergleichen) oben auf der Seite den Namen eines Branches aus.
Hier sehen Sie ein Beispiel für einen Vergleich zwischen zwei Branches.
Tags vergleichen
Auf ähnliche Weise können Sie auch Vergleiche zwischen Tags erstellen, die für Projektveröffentlichungen angelegt wurden. Der Vergleich zwischen Tags ist eine gute Möglichkeit, Versionshinweise von unterschiedlichen Versionen Ihres Projekts zusammenzustellen.
Anstelle eines Namens eines Branches geben Sie hier im Dropdownmenü compare
den Namen Ihres Tags ein.
Hier sehen Sie ein Beispiel für einen Vergleich zwischen zwei Tags.
Commits vergleichen
Sie können auch zwei beliebige Commits in Ihrem Repository oder seinen Forks auf GitHub mit einem Two-Dot-Diff vergleichen.
Um schnell zwei Commits oder Git Object-IDs (OIDs) direkt miteinander in einem Two-Dot-Diff auf GitHub zu vergleichen, bearbeiten Sie die URL der Seite „Comparing changes“ (Änderungen vergleichen) Ihres Repositorys.
Weitere Informationen zu anderen Vergleichsoptionen finden Sie unter „Three-Dot-Diff- und Two-Dot-Diff-Vergleiche“.
Zwischen Forks vergleichen
Sie können Ihr Basis-Repository und jedes geforkte Repository vergleichen. Diese Ansicht wird gezeigt, wenn ein Benutzer einen Pull Request für ein Projekt ausführt.
Um Branches aus verschiedenen Repositorys zu vergleichen, stellen Sie den Branch-Namen Benutzernamen voran. Wenn Sie beispielsweise octocat:master
für base
und octo-org:master
für compare
festlegen, können Sie den master
-Branch der Repositorys vergleichen, die octocat
bzw. octo-org
gehören.
Hier sehen Sie ein Beispiel für einen Vergleich zwischen zwei Repositorys.
Zwischen Zeiträumen vergleichen
Sie können Vergleiche für beliebige Zeiträume erstellen, z. B. einen Monat oder zwei Wochen. Um einen Zeitraum zu definieren, geben Sie den Branch-Namen ein, gefolgt von einem @
und dem Datum in geschweiften Klammern { }
. Wenn Sie z. B. master@{2weeks}
im Dropdownmenü base
eingeben, wird der aktuelle master
-Branch mit dem master
-Branch von vor zwei Wochen verglichen.
Hier sehen Sie ein Beispiel für einen Vergleich zwischen zwei Zeiträumen.
Sie können auch ein bestimmtes Datum für den Vergleich angeben. Das Datum muss im Format MM-TT-JJ (Monat-Tag-Jahr) formatiert sein.
Hier sehen Sie ein Beispiel für einen Vergleich zwischen einem Branch am 22.07.216 und demselben Branch ein paar Tage später.
Vergleiche zwischen Commits
Als Kürzel verwendet Git die Notation ^
, die „einen Commit zuvor“ bedeutet.
Mit dieser Notation können Sie einen einzelnen Commit oder Branch mit seinem unmittelbaren Vorgänger vergleichen. Beispielsweise bedeutet 96d29b7^^^^^
fünf Commits vor 96d29b7
, da fünf ^
-Zeichen enthalten sind. Bei der Eingabe von 96d29b7^^^^^
im base
-Branch und 96d29b7
im compare
-Branch werden die fünf Commits, die vor 96d29b7
vorgenommen wurden, mit dem Commit 96d29b7
verglichen.
Hier sehen Sie ein Beispiel für einen Vergleich mit der ^
-Notation.