Code-Review

Code-Review

Überprüfen Sie Codeänderungen in ChatGPT- und Codex-Clients

Verwenden Sie ChatGPT oder Codex, um Codeänderungen zu verstehen, mögliche Probleme zu untersuchen und Review-Feedback vorzubereiten.

Pull-Request-Reviews

Das Plugin Code Review zeigt die Beschreibung, geänderte Dateien, Kommentare und Prüfungen eines Pull Requests an. Untersuchen Sie damit mögliche Probleme, bevor Sie ihn genehmigen.

Code-Reviews für GitHub sind allgemein verfügbar. Die Unterstützung für GitLab-Merge-Requests in Code Review befindet sich in der Vorschauphase. Wie Sie Cloud-Reviews aus GitLab mit @codex review oder automatische Merge-Request-Reviews auslösen, erfahren Sie unter GitLab-Merge-Requests mit Codex prüfen.

Informationen zu Reviews, die über ein Repository ausgelöst werden, finden Sie im Leitfaden zur GitHub-Integration und unter Einrichtung einer Umgebung für Codex Cloud (Legacy) .

Die Desktop-App enthält Code Review. Sie können es über Ihre installierten Plugins an die Seitenleiste der App anheften.

Einen Pull Request anzeigen

  1. Öffnen Sie Code Review über die Seitenleiste.
  2. Verbinden Sie Ihr Konto beim Quellcodeanbieter, wenn Sie dazu aufgefordert werden. Verwenden Sie ein Konto mit Zugriff auf das Repository, das Sie prüfen möchten.
  3. Wählen Sie einen Pull Request in der Seitenleiste aus oder geben Sie dessen Link in das Suchfeld ein.
  4. Unter Zusammenfassung finden Sie die Beschreibung, Aktivitäten, Kommentare und Prüfungen. Öffnen Sie Änderungen, um geänderte Dateien und Kommentare neben dem Diff zu prüfen.

Reviews finden, die Ihre Aufmerksamkeit erfordern

In Ihrem persönlichen Posteingang finden Sie GitHub-Pull-Requests aus verschiedenen Repositorys. Wählen Sie Mir zugewiesen für an Sie gerichtete Review-Anfragen, Meinem Team zugewiesen für Teamanfragen oder Von mir erstellt, um zu Ihren eigenen Änderungen zurückzukehren. Prüfen Sie den Review-Status und öffnen Sie dann den Pull Request, um Feedback und Prüfungen einzusehen.

Um später zu einem Review zurückzukehren, wählen Sie das Stecknadelsymbol in seiner Symbolleiste. Der Pull Request erscheint in der Seitenleiste unter Angeheftet.

Geänderte Dateien und zugehörige Pull Requests prüfen

Wählen Sie unter Änderungen für eine Datei nach der Prüfung Als angesehen markieren. Wählen Sie das Steuerelement erneut, um die Markierung zu entfernen. Diese Markierungen gelten für die angezeigte Revision.

Bei Änderungen, die auf voneinander abhängige Pull Requests verteilt sind, verwenden Sie Stapel unter Zusammenfassung, um einen zugehörigen Pull Request zu öffnen und seinen Diff, seine Kommentare und seine Prüfungen einzusehen. Dieser Abschnitt erscheint, wenn Code Review einen Stapel offener Pull Requests findet.

Ein automatisches Cloud-Review lesen

Mit dem ChatGPT Codex-Connector, den erforderlichen Repository-Berechtigungen und aktivierten automatischen Reviews kann Codex einen GitHub-Pull-Request prüfen, bevor Sie ihn öffnen. Kommentare erscheinen auf GitHub und in Code Review.

Für Cloud-Reviews müssen Sie keine Cloud-Umgebung erstellen oder verwalten. Informationen zu Verbindungsvoraussetzungen, Repository-Einstellungen und Reviews, die Sie mit @codex review auslösen, finden Sie unter Codex in GitHub verwenden.

Gleichen Sie die Review-Ergebnisse mit dem Diff ab. Automatische Cloud-Reviews sind von Reviews getrennt, die Sie im Chat des Pull Requests starten.

Fragen zur Änderung stellen

Beschreiben Sie im Chat des Pull Requests das erwartete Verhalten und bitten Sie Codex, die Änderung zu erklären oder zu untersuchen.

Wählen Sie Mit Codex prüfen, um ein Review in einem neuen Chat zu starten. Wenn Sie den Pull Request neben einem bestehenden Chat anzeigen, nutzen Sie diesen Chat für Fragen zur Änderung.

Nutzen Sie installierte Skills und verbundene Quellen, um Codex die Review-Richtlinien oder Designdokumente Ihres Teams bereitzustellen. Bitten Sie Codex, die Änderung zusammenzufassen und die Risiken zu erläutern. Prüfen Sie anschließend den Kontext und den Code, auf die Codex verweist.

Ein Pull Request fügt beispielsweise einem Issue-Board die Filter Offen und Geschlossen hinzu. Sie erwarten, dass Alle der Standard bleibt und ein Leerzustand angezeigt wird, wenn keine Issues den Filterkriterien entsprechen:

Walk me through this pull request. Focus on the default filter and what
happens when there are no matching issues. All should remain the default.

Fordern Sie Belege an:

Show me the code path and tests for the no-matches case. Explain what is
covered and what still needs verification.

Gleichen Sie den referenzierten Diff und die Tests mit dem erwarteten Verhalten ab.

Wählen Sie einen Befund aus, um seine Erläuterung und die relevanten Zeilen unter Änderungen einzusehen. Gleichen Sie ihn mit dem neuesten Diff, dem erwarteten Verhalten und den Tests ab, bevor Sie entscheiden, ob eine Korrektur nötig ist. Über den Review-Chat können Sie ein laufendes Review stoppen.

Ihr Review anpassen

Wählen Sie das Zahnradsymbol Review-Anweisungen neben Mit Codex prüfen. Sie können diese Anweisungen auch unter Einstellungen > Code Review bearbeiten.

Geben Sie Codex Kriterien und ein Berichtsformat vor, die für alle Ihre Reviews gelten, zum Beispiel:

Start with a short summary. Prioritize behavior changes, data loss, and
missing edge-case tests. For each finding, explain the triggering input,
expected behavior, and actual behavior. Use our team's concise review style.

Diese Anweisungen gelten repositoryübergreifend für Reviews, die Sie mit Mit Codex prüfen starten. Änderungen während eines laufenden Reviews gelten für Ihr nächstes Review. Nutzen Sie den Chat des Pull Requests für Fragen zu einer bestimmten Änderung.

Wählen Sie optional Comic, Visualisierung oder PDF, um eine vorgeschlagene Anweisung zum Erklären der Änderung in diesem Format hinzuzufügen. Passen Sie den Text nach Bedarf an und wählen Sie anschließend Speichern oder Review ausführen.

Feedback teilen und nachverfolgen

Ein Review eines Pull Requests im Chat veröffentlicht keine Kommentare, genehmigt ihn nicht und führt ihn nicht zusammen. Sie entscheiden, welche Befunde Sie teilen.

Sobald Sie einen möglichen Fehler bestätigt haben, bitten Sie Codex, beim Vorbereiten eines Review-Kommentars zu helfen:

Using the team review guidelines we discussed, draft a comment describing
the no-matches behavior we verified, what should happen instead, and the test
that would cover it. Keep the comment as a draft.

Prüfen Sie vor dem Veröffentlichen die Datei- und Zeilenverweise im Entwurf. Lassen Sie Entwürfe im Chat, bis Sie bereit sind: Beim Veröffentlichen unter Zusammenfassung oder Änderungen wird der Kommentar sofort an den Quellanbieter gesendet, ohne auf Review absenden zu warten.

Wählen Sie über Review absenden die Option Kommentieren, Genehmigen oder Änderungen anfordern und senden Sie Ihr Review an den Quellanbieter. Prüfen Sie die ausgewählte Entscheidung und den Review-Kommentar vor dem Absenden.

Wenn Sie den Pull Request erstellt haben, kehren Sie zu ihm zurück und bitten Sie Codex, auf konkretes Feedback einzugehen. Prüfen Sie die daraus entstandenen Änderungen und führen Sie die relevanten Tests aus. Prüfen Sie vor dem Genehmigen oder Zusammenführen die neueste Revision, die Prüfungen und noch offenes Feedback.

Das Bearbeiten von Pull-Request-Beschreibungen mit angehängten Bildern wird in Code Review nicht unterstützt. Öffnen Sie den Pull Request in GitHub, um diese Beschreibungen zu bearbeiten.

In einem Chat fortfahren

Wenn unter Zusammenfassung der Bereich Threads angezeigt wird, wählen Sie einen verknüpften Chat aus, um zu dieser Unterhaltung zurückzukehren. Dies sind Ihre Chats, die dem Pull Request zugeordnet sind.

Wählen Sie in Codex bei einem offenen Pull Request unter Prüfungen die Option Beheben, um fehlgeschlagene Prüfungen an den Chat anzuhängen. Dadurch wird eine Nachricht vorbereitet, aber noch nicht gesendet. Prüfen oder ergänzen Sie Ihren Prompt und senden Sie ihn anschließend, um Codex um eine Untersuchung zu bitten. Prüfen Sie die daraus entstandenen Änderungen und führen Sie die relevanten Tests erneut aus, bevor Sie eine Korrektur pushen.

Die verfügbaren Diagnoseinformationen hängen vom Anbieter der Prüfungen ab. Bei CI von Drittanbietern kann Codex den an GitHub gemeldeten Status und die gemeldete Ausgabe verwenden.

Lokale Änderungen prüfen

Der in Codex integrierte Befehl /review prüft Änderungen in Ihrem Git-Checkout, während das Code Review-Plugin mit Pull Requests arbeitet. Wählen Sie Ihren Client aus, um die passenden Schritte anzuzeigen.

Review in der App

Öffnen Sie den Review-Bereich, um die Änderungen nachzuvollziehen, zeilenspezifisches Feedback zu geben und zu entscheiden, was Sie stagen, zurücksetzen, committen oder pushen möchten.

Um Codex mit der Prüfung der Änderungen zu beauftragen, geben Sie /review in den Composer ein. Wählen Sie Review anhand eines Basis-Branches oder Nicht committete Änderungen überprüfen. Codex meldet priorisierte Befunde, ohne Ihren Arbeitsbaum zu verändern.

Der Review-Bereich erfordert ein Projekt in einem Git-Repository. Wenn Ihr Projekt noch kein Git-Repository ist, fordert die App Sie auf, eines zu erstellen.

Review-Umfang auswählen

Welche Änderungen angezeigt werden

Der Review-Bereich bildet den Status Ihres Git-Repositorys ab, nicht nur die Änderungen, die Codex vorgenommen hat. Er enthält Änderungen von Codex, Ihre eigenen Änderungen und alle anderen nicht committeten Änderungen im Repository.

Standardmäßig zeigt der Review-Bereich Nicht gestagte Änderungen. Verwenden Sie Gestagt für den Git-Index, Commit für einen ausgewählten Commit, Branch für den Diff gegenüber Ihrem Basis-Branch oder Letzter Turn für den jüngsten Assistenten-Turn.

Mehrere Repositorys überprüfen

Wenn ein lokales Projekt mehrere Ordner umfasst, die zu unterschiedlichen Git-Repositorys gehören, kann der Review-Bereich Änderungen aus jedem Repository anzeigen. Öffnen Sie die Repository-Auswahl in der Kopfzeile des Review-Bereichs, um ein anderes Repository zu prüfen und die hinzugefügten oder entfernten Zeilen anzuzeigen, ohne den aktuellen Review-Bereich zu verlassen.

Wählen Sie Letzter Turn, um die neuesten Änderungen des Assistenten in allen verknüpften Repositorys anzuzeigen. Die Repository-Auswahl zeigt für diese Ansicht Alle Repositorys an. Andere Review-Umfänge wie Nicht gestagt, Gestagt und Branch gelten für das ausgewählte Repository.

Mit Review-Ergebnissen arbeiten

Ergebnisse des Code-Reviews

Review-Befunde erscheinen als Inline-Kommentare im Review-Bereich.

Reviews werden standardmäßig im aktuellen Chat ausgeführt. Wählen Sie unter Einstellungen > Allgemein > Code-Review die Option Separat, um einen eigenen Review-Chat zu starten. Siehe Entwicklereinstellungen.

Inline-Kommentare zum Code-Review im Review-Bereich

Wenn Sie Codex bitten, die gefundenen Fehlerbehebungen anzuwenden, gelten Ihre normalen Sandbox- und Genehmigungseinstellungen.

Im Review-Bereich navigieren

Inline-Kommentare für Feedback

Mit Inline-Kommentaren können Sie Feedback direkt an bestimmte Zeilen im Diff anheften. Dies ist häufig der schnellste Weg, Codex zur richtigen Fehlerbehebung zu führen.

So hinterlassen Sie einen Inline-Kommentar:

  1. Öffnen Sie den Review-Bereich.
  2. Bewegen Sie den Mauszeiger über die Zeile, die Sie kommentieren möchten.
  3. Wählen Sie die eingeblendete Schaltfläche + aus.
  4. Schreiben Sie Ihr Feedback und senden Sie es ab.
  5. Nachdem Sie Ihr Feedback vollständig hinterlassen haben, senden Sie eine Nachricht an den Chat.

Da die Kommentare zeilenspezifisch sind, kann Codex präziser darauf reagieren als auf eine allgemeine Anweisung.

Codex behandelt Inline-Kommentare als Review-Anleitung. Senden Sie nach dem Hinterlassen der Kommentare eine Folgenachricht, die Ihre Absicht ausdrücklich beschreibt, beispielsweise: „Bearbeiten Sie die Inline-Kommentare und halten Sie den Umfang minimal.“

Dateien stagen und zurücksetzen

Der Review-Bereich enthält Git-Aktionen, mit denen Sie den Diff vor dem Committen gestalten können.

Sie können Änderungen auf den folgenden Ebenen stagen, aus dem Staging entfernen oder zurücksetzen:

  • Gesamter Diff: Verwenden Sie die Aktionsschaltflächen in der Kopfzeile des Review-Bereichs, etwa Alle stagen oder Alle zurücksetzen.
  • Pro Datei: Stagen Sie eine einzelne Datei, entfernen Sie sie aus dem Staging oder setzen Sie sie zurück.
  • Pro Hunk: Stagen Sie einen einzelnen Hunk, entfernen Sie ihn aus dem Staging oder setzen Sie ihn zurück.

Verwenden Sie das Staging, wenn Sie einen Teil der Arbeit übernehmen möchten, und das Zurücksetzen, wenn Sie ihn verwerfen möchten.

Gestagte und nicht gestagte Zustände

Git kann in derselben Datei sowohl gestagte als auch nicht gestagte Änderungen darstellen. In diesem Fall kann der Bereich dieselbe Datei in beiden Ansichten anzeigen. Das ist normales Git-Verhalten.