IntelliJ: Anzeigen des Unterschieds aller geänderten Dateien zwischen lokalem und einem Git-Commit / Zweig

101

Die Verwendung des Diff-Viewers von IntelliJ ist eine sehr gute Möglichkeit, Code zu überprüfen, da Sie mit allen Funktionen des IntelliJ-Code-Editors (Refactoring, Vervollständigung usw.) Änderungen an Ihrer lokalen Version vornehmen können.

Leider habe ich nicht herausgefunden, wie man das Wichtigste macht, wenn man Codeüberprüfungen in IntelliJ durchführt, nämlich: Betrachten des Unterschieds aller geänderten Dateien im Arbeitsbaum (ausgecheckt in den Zweig, aus dem Sie zusammenführen möchten) und einen anderen Zweig (den Zweig, in den Sie zusammenführen möchten, z. B. "master").

Weiß jemand, wie man das macht?

Jon Tirsen
quelle
Bitte lesen Sie den Abschnitt Vergleichen in einem ihrer Blog- Beiträge .
Vic
Diese Frage zeigt die Menüschritte zum Anzeigen von Unterschieden für alle Dateien gegenüber einem anderen Zweig (dh Master): stackoverflow.com/questions/40637055/…
Alan Thompson

Antworten:

58

Obwohl Jon Tirsens Antwort richtig ist, müssen Sie den gesamten Text durchgehen, um zu verstehen, wie das geht.

Hier sind die Bilder davon in Mac.

  1. Ich arbeite zurzeit mit hello_world und möchte mit master vergleichen. Geben Sie hier die Bildbeschreibung ein

  2. Als nächstes öffnet sich ein Fenster. Wählen Sie Filesund drücken Siecmd + d

Geben Sie hier die Bildbeschreibung ein

  1. Ein weiteres Fenster, das diff zeigt. Sie können viele verschiedene Arten von Diff ausführen. Verwenden Sie cmd + shift + ]und cmd + shift + [, um zwischen Dateien zu wechseln.

Geben Sie hier die Bildbeschreibung ein

Diff-Tipp: IntelliJ bietet erweiterte Diff-Funktionen. Sie können diese auf dem 3. Bild überprüfen.

unbekannter Fehler
quelle
1
Wie kann ich dies für das gesamte Projekt tun, anstatt Datei für Datei?
JoeMjr2
@ JoeMjr2 Ich bin mir wirklich nicht sicher, ob diese Funktion heute verfügbar ist. Sie können alle Dateien navigieren durch Verwendung cmd + shift + [und cmd + shift + ](ersetzen cmd mit Strg , wenn Sie Windows verwenden).
Unbekannter Fehler
Dies wurde im Versionsupdate 2020 geändert. Die aktualisierte Methode finden Sie in meiner Antwort unten.
BlueYoshi
Können Sie auch 2 Revisionen anhand von Commit-IDs vergleichen?
Dan Macák
85

Dies wurde nun implementiert. Um zwei Zweige zu vergleichen, tun Sie Folgendes:

  1. Schauen Sie sich einen der Zweige an, mit denen Sie vergleichen möchten.
  2. Wählen Sie den Zweig, mit dem Sie vergleichen möchten, im Popup-Fenster des Git-Zweigs in der Statusleiste unten rechts im IntelliJ-Fenster aus. Ein Popup mit einigen Optionen wird angezeigt.
  3. Wählen Sie die Option "Vergleichen".
  4. Hier werden standardmäßig alle Commits angezeigt. Sie können auch die Registerkarte "Diff" auswählen, um die tatsächlichen Änderungen anzuzeigen.

Dies alles wird in einem ihrer Blog-Beiträge ausführlicher beschrieben .

Jon Tirsen
quelle
4
Ist dies auch mit willkürlichen Commits anstelle von Filialen möglich? Ich meine, ich kann schnell eine lokale Niederlassung dafür erstellen, aber das scheint etwas umständlich.
Robin
@ Hikaru755 hast du es jemals herausgefunden? Ich versuche das gleiche zu tun
ycomp
@ycomp Nein, leider nicht. Ich habe es vorerst geschafft, temporäre Zweige dafür zu erstellen.
Robin
1
@ Hikaru755 ja ich habe einen tmpZweig erstellt, ich denke es ist gut genug. Scheint aber übertrieben
ycomp
3
@ Robin ja du kannst. Öffnen Sie den Dateiverlauf, wählen Sie die beiden Commits aus und drücken Sie Ctrl-D. Es funktioniert auch zwischen verschiedenen Zweigen.
Victor Sergienko
9

Dies ist jetzt implementiert. Sie klicken mit der rechten Maustaste auf das Projekt und wählen "Git - Vergleich mit Zweig ..." und wählen masterZweig. Getan. Diff alle Dateien.

WesternGun
quelle
Dieser ist ein guter Ansatz. Wenn Sie die Option abgeblendet sehen, liegt dies daran, dass Sie nicht mit der rechten Maustaste in den Projektordner java / main / src klicken.
jmojico
7

Dies wurde im Versionsupdate 2020 geändert:

Sie müssen jetzt Folgendes tun:

  1. Kasse eines der Zweige, die Sie vergleichen möchten.

  2. Öffnen Sie das Menü Zweige .

  3. Wählen Sie den anderen Zweig aus, mit dem Sie vergleichen möchten.

  4. Wählen Sie "Diff mit Arbeitsbaum anzeigen" .

Geben Sie hier die Bildbeschreibung ein

BlueYoshi
quelle
Danke, mir wurde klar, dass es sich geändert hatte, aber ich konnte nicht herausfinden, wohin es ging.
fmquaglia
1
Dies ist derzeit die aktuellste Antwort. Andere Antworten sind für ältere IntelliJ-Versionen relevant, nicht jedoch für die aktuelle.
Pavel
1

Wenn Sie Ihre aktuell geöffnete Datei nur nebeneinander mit einem anderen Zweig vergleichen möchten, gehen Sie einfach zu VCS -> Git -> Mit Zweig vergleichen.

dringlich
quelle
6
Das beantwortet eine Frage, aber nicht diese! :)
Lambart
1

Klicken Sie mit der rechten Maustaste auf die Klasse und wählen Sie die Option Git, bei der die Option Mit Zweig vergleichen verglichen wird, bei der Sie den jeweiligen Zweig auswählen können.

Sonal Balekai
quelle