| Zusammenfassung | Discourse Code Review ermöglicht die Überprüfung von GitHub-Commits in Discourse. | |
| Repository-Link | https://github.com/discourse/discourse-code-review | |
| Installationsanleitung | So installierst du Plugins in Discourse |
Funktionen
Was ist das?
Das Discourse Code Review Plugin bietet eine bidirektionale Integration mit GitHub-Code-Repositories. Es ermöglicht deinem Team, Commits in einem Repository mit Hilfe von Discourse-Funktionen und Plugins wie Zuweisung, Flüstern, Benachrichtigungen, benutzerdefinierten Workflows usw. zu überprüfen. Jeder Commit in einem Repository wird zu einem Thema. Antworten auf das Thema werden auf GitHub gespiegelt. Die Integration ist bidirektional, was bedeutet, dass du in Discourse kommentieren und dies auf GitHub sehen kannst oder in GitHub kommentieren und dies in Discourse sehen kannst.
Es bietet einen sehr leistungsfähigen Workflow für Teams, die alle Commits in einer beliebigen Anzahl von Repositories überprüfen müssen.
Es ermöglicht dir sicherzustellen, dass mehrere Teammitglieder über alle Änderungen in Repositories informiert sind. Du kannst Commits für Nachbearbeitung markieren, Überprüfungsarbeit zuweisen und mehr.
Hinweis: Wenn du ein Thema anzeigst, das genehmigt werden kann, kannst du die y-Taste auf deiner Tastatur verwenden, um Commits schneller zu genehmigen.
Kann ich es in Aktion sehen?
Discourse verwendet dieses Plugin intern, um Repositories im Blick zu behalten. Du kannst ein Beispiel für die Discourse-Seite hier sehen:
Auf GitHub sieht dasselbe Thema so aus:
Konfiguration
Das Plugin verlässt sich auf GitHub-Webhooks, um Repositories und Änderungen an Repositories zu erkennen. Für eine minimale Konfiguration musst du die folgende Einstellung auf einen geheimen String setzen.
code review github webhook secret
Sobald dies in deinem GitHub-Repository festgelegt ist, richtest du einen Webhook mit folgenden Parametern ein:
Payload-URL: https://YOUR_DISCOURSE/code-review/webhook
Inhaltstyp: application/json
Geheimnis: der Wert von code review github webhook secret
Ereignistypen:
- Commit-Kommentare
- Issue-Kommentare
- Pull Requests
- Pull Request-Reviews
- Pull Request-Review-Kommentare
- Pushes
Das Plugin bietet die folgenden zusätzlichen Seiteneinstellungen:
code review api username : GitHub ist sehr restriktiv, was die Anzahl der erlaubten anonymen API-Anfragen betrifft. Diese Einstellung ermöglicht es dir, die Konto-Schlüssel eines Discourse-Benutzers für /comments- und /commit-Anfragen zu verwenden. Dies reduziert die Wahrscheinlichkeit, Rate-Limits zu erreichen, erheblich.
code review catch up commits : Anzahl der Commits, die „eingeholt“ und für die Themen erstellt werden sollen, wenn du auf ein neues Repository triffst.
code review default parent category: Wähle eine Standard-Elternkategorie für Kategorien, die vom Plugin erstellt werden
code review pending tag: Tag, der auf alle nicht überprüften Commits angewendet wird, standardmäßig pending
code review approved tag: Tag, der auf genehmigte Commits angewendet wird, standardmäßig approved
code_review_followup_tag: Tag, der auf Follow-up-Commits angewendet wird, standardmäßig follow-up
code review allow self approval: Dürfen Mitarbeiter eigene Commits genehmigen?
code review default mute new categories: Neue Kategorien, die von Code Review erstellt werden, sind für Benutzer standardmäßig stummgeschaltet
code review skip duration minutes: Das Klicken auf die Überspringen-Schaltfläche bei einem Commit verhindert, dass dieser Commit für die Anzahl der Minuten, die durch diese Einstellung festgelegt ist, erneut angezeigt wird.
ÄNDERUNGSHISTORIE
TODO
Extras
Wie Discourse dieses Plugin verwendet
TL;DR - Dieses Plugin wurde entwickelt, um die Nutzung von GitHub durch das Discourse-Team für die Code-Überprüfung zu ergänzen.
Weitere Informationen
Von @sam:
Wir verwenden weiterhin PRs über die GitHub-Oberfläche und machen es gerne für viele Änderungen. Hier hat sich nichts geändert. GitHub ist fantastisch, wir lieben GitHub. Sie haben einen hervorragenden Workflow für Änderungen, die noch nicht gelandet sind. Allerdings…
Der Workflow von GitHub für Änderungen, die direkt committet wurden, ins Repository ist schrecklich.
Review füllt eine Lücke, die mit GitHub heute schlicht nicht gefüllt werden kann. Wir möchten, dass mindestens ein Teammitglied jede Änderung in unseren verschiedenen von Discourse gehosteten Git-Repos überprüft. Wenn wir die von GitHub bereitgestellte Oberfläche verwenden, wird niemandem je etwas anderes als Pull Requests erlaubt sein. Das würde uns enorm verlangsamen.
Wir brauchen die Möglichkeit, sich privat zu kommunizieren, ohne dass die ganze Welt davon weiß, was bestimmte Änderungen betrifft. Zum Beispiel: Wir sollten dieses tolle Fix so schnell wie möglich für
<insert giant company name>bereitstellen, @sam, kannst du dich darum kümmern?Wir brauchen die Möglichkeit, Änderungen zu genehmigen oder Follow-up anzufordern, was die GitHub-Oberfläche nicht bietet.
Wir brauchen die Möglichkeit, bestimmte Commits einem Benutzer zuzuweisen. Wenn @sam einen Commit mit einigen Fehlern erstellt, ist es schön, dass wir ihm diesen bestimmten Commit direkt zuweisen, ihn für Follow-up markieren und dann verfolgen können, ob er nachbearbeitet wurde.
Discourse ist ziemlich fantastisch in Sachen Konversation, und die kleinen Funktionen machen einen ziemlich großen Unterschied. Ich kann sehen, wenn Leute tippen. Ich muss nie Seiten aktualisieren, damit Änderungen erscheinen. Zitieren ist wirklich schön, Bild-Uploads sind schön, und so weiter.
Discourse ist sehr gut im Umgang mit dem Lesezustand. Du erhältst sehr starke Garantien, dass du alles einmal gelesen hast. Bei GitHub habe ich keine Ahnung, welche Commits ich gelesen habe und welche nicht. Wir haben eine unglaublich effiziente Methode, um mit dem Feuerhose an Informationen umzugehen.
Und die Liste geht weiter…
Also agiert Review als Ergänzung zu GitHub. Wir verwenden GitHub im Moment, um mit Änderungen umzugehen, die noch nicht gelandet sind. Und wir verwenden Review, um Änderungen, die bereits gelandet sind, ordnungsgemäß zu behandeln.

