Note
Beim Erstellen deines Pull Requests kannst du den Basisbranch ändern, mit dem du deine Änderungen vergleichst. Weitere Informationen findest du unter Erstellen eines Pull Requests.
Du kannst vorgeschlagene Änderungen in einem Pull Request auf der Registerkarte „Geänderte Dateien“ anzeigen.
Anstatt die Commits selbst anzuzeigen, kannst du die vorgeschlagenen Änderungen so anzeigen, wie sie in den Dateien erscheinen werden, sobald der Pull Request übertragen wurde. Die Dateien werden in alphabetischer Reihenfolge auf der Registerkarte Dateien geändert angezeigt. Ergänzungen zu den Dateien werden grün angezeigt und werden von einem +
-Zeichen eingeleitet, während Inhalte, die entfernt wurden, rot angezeigt und von einem -
-Zeichen eingeleitet werden.
Anzeigeoptionen für Diffs
Tip
Wenn du den Kontext einer Änderung nicht nachvollziehen kannst, kannst du auf der Registerkarte „Files changed“ auf die Option View klicken, um die gesamte Datei mit den vorgeschlagenen Änderungen anzuzeigen.
Du hast mehrere Möglichkeiten für die Anzeige eines Diff:
- Die einheitliche Ansicht zeigt aktualisierte und vorhandene Inhalte gemeinsam in einer linearen Ansicht.
- Die geteilte Ansicht zeigt alte Inhalte auf der einen Seite und neue Inhalte auf der anderen Seite.
- Die Rich-Diff-Ansicht zeigt eine Vorschau, wie die Änderungen nach dem Merge des Pull Requests aussehen werden.
- Die Quellansicht zeigt die Änderungen in der Quelle ohne die Formatierung der Rich-Diff-Ansicht.
Du kannst außerdem Leerzeichenänderungen ignorieren, um eine genauere Ansicht der wesentlichen Änderungen in einem Pull Request zu erhalten.
Um Änderungen in einem großen Pull Request leichter überprüfen zu können, kannst du den Diff so filtern, dass nur Dateien angezeigt werden, deren CODEINHABER*in du bist, und gelöschte oder bereits überprüfte Dateien ausgeblendet werden. Weitere Informationen findest du unter Dateien in einem Pull Request filtern.
Gründe für Anzeigefehler bei Diffs
- Du hast die maximale Anzahl von Dateien oder bestimmten Dateitypen überschritten. Weitere Informationen findest du unter Grenzwerte für Repositorys.
- Deine Datei erfüllt eine Regel in der gitattributes-Datei des Repositorys, die verhindern, dass diese Datei standardmäßig angezeigt wird. Weitere Informationen findest du unter Darstellung geänderter Dateien auf GitHub anpassen.
Vergleiche von Three-Dot- (Dreipunkte-) und Two-Dot- (Zweipunkte-) Diffs von Git
Es gibt zwei Vergleichsmethoden für den git diff
-Befehl; Zweipunkt (git diff A..B
) und Dreipunkt (git diff A...B
). Pull Requests für GitHub zeigen einen Dreipunkt-Diff an.
Vergleich der Dreipunkt-Git-Diff
Der Dreipunkt-Vergleich zeigt den Unterschied zwischen dem neuesten gemeinsamen Commit von beiden Branches (Zusammenführungsbasis) und der neuesten Version der Themen-Branch.
Vergleich der Zweipunkt-Git-Diff
Der Zweipunktvergleich zeigt den Unterschied zwischen dem neuesten Zustand der Basis-Branches (zum Beispiel main
) und der neuesten Version der Themen-Branch.
Um zwei committish-Referenzen in einem Zwei-Punkte-Diff-Vergleich auf GitHub anzuzeigen, kannst du die URL der Seite „Änderungen vergleichen“ deines Repositorys bearbeiten. Weitere Informationen findest du im Git-Glossar unter „committish“ auf der Website des Buchs Pro Git.
Diese URL verwendet beispielsweise die gekürzten SHA-Codes, um die Commits f75c570
und 3391dcc
zu vergleichen: https://github.com/github-linguist/linguist/compare/f75c570..3391dcc
.
Ein Two-Dot-Diff (Zweipunkte-Diff) vergleicht zwei Git-Committish-Referenzen, wie SHAs oder OIDs (Objekt-IDs), direkt miteinander. Auf GitHub müssen die Git-Committish-Referenzen in einem Two-Dot-Diff-Vergleich an das gleiche Repository oder seine Forks gepusht werden.
Wenn du einen Two-Dot-Diff in einem Pull Request simulieren und einen Vergleich zwischen den neuesten Versionen jedes Branch sehen möchtest, kannst du den Basis-Branch in deinen Themen-Branch zusammenführen, wodurch der letzte gemeinsame Vorgänger deiner Branches aktualisiert wird.
Weitere Informationen zu Git-Befehlen zum Vergleichen von Änderungen findest du unter Optionen für „git diff“ auf der Website des Buchs Pro Git.
Informationen zum Dreipunkt-Vergleich auf GitHub
Da der Dreipunkt-Vergleich einen Vergleich mit der Mergebasis durchführt, liegt der Fokus auf „dem, was mit einem Pull Request eingeführt wird“.
Wenn du einen Zweipunktvergleich verwendest, ändert sich der Diff, wenn die Basis-Branch aktualisiert wird, auch wenn du keine Änderungen an der Themen-Branch vorgenommen hast. Darüber hinaus konzentriert sich ein Zweipunktvergleich auf die Basis-Branch. Dies bedeutet, dass alles, was du hinzufügst, als fehlend aus der Basis-Branch angezeigt wird, als ob es sich um eine Löschung handelte, und umgekehrt. Dadurch werden die Änderungen der Themen-Branches mehrdeutig.
Im Gegensatz dazu werden die Branches anhand des Dreipunktvergleichs immer in den Diff-Bereichen geändert, wenn die Basis-Branches aktualisiert werden, da der Diff alle Änderungen anzeigt, da die Veränderungen seit der Branches unterschiedlich sind.
Häufiges Zusammenführen
Um Verwechslungen zu vermeiden, solltest du die Basisbranches (zum Beispiel main
) häufig in deinen Topic-Branches zusammenführen. Durch das Zusammenführen der Basis-Branches sind die Diffs, die durch Zweipunkt- und Dreipunktvergleiche dargestellt werden, identisch. Es wird empfohlen, eine Pull Request so schnell wie möglich zusammenzuführen. Dies fordert Mitwirkende auf, Pull Requests kleiner zu machen, die im Allgemeinen empfohlen werden.