| 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 installieren Sie Plugins in Discourse |
Funktionen
Was ist das?
Das Discourse Code Review-Plugin bietet eine bidirektionale Integration mit GitHub-Code-Repositories. Es ermöglicht Ihrem Team, Commits in einem Repository unter Nutzung von Discourse-Funktionen und Plugins wie Zuweisung, Whispers, Benachrichtigungen, benutzerdefinierte 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, das bedeutet, Sie können in Discourse kommentieren und dies in GitHub sehen oder in GitHub kommentieren und dies in Discourse sehen.
Es bietet einen sehr leistungsstarken Workflow für Teams, die alle Commits in einer beliebigen Anzahl von Repositories überprüfen müssen.
Es ermöglicht Ihnen sicherzustellen, dass mehrere Teammitglieder über alle Änderungen an den Repositories informiert sind. Sie können Commits zur Nachverfolgung markieren, Review-Arbeiten zuweisen und mehr.
Hinweis: Wenn Sie ein Thema anzeigen, das genehmigt werden kann, können Sie die Taste y auf Ihrer Tastatur verwenden, um Commits schneller zu genehmigen.
Kann ich es in Aktion sehen?
Discourse betreibt https://review.discourse.org/ Diese Seite ist öffentlich und jeder kann sich mit GitHub-Anmeldeinformationen anmelden. Die Seite zeigt nicht-Mitarbeitern nur eine Teilmenge der Funktionen an. Ein vollständigeres Beispiel könnte sein:
Auf GitHub sieht dasselbe Thema so aus:
Konfiguration
Das Plugin stützt sich auf GitHub-Webhooks, um Repositories und Änderungen an Repositories zu entdecken. Für eine minimale Konfiguration müssen Sie die folgende Einstellung auf einen geheimen String setzen.
code review github webhook secret
Sobald dies in Ihrem GitHub-Repository-Setup festgelegt ist, richten Sie einen Webhook mit folgenden Einstellungen ein:
Payload-URL: https://IHRE_DISCOURSE/code-review/webhook
Content-Type: application/json
Geheimnis: der Wert von code review github webhook secret
Ereignistypen:
- Commit-Kommentare
- Issue-Kommentare
- Pull Requests
- Pull Request-Bewertungen
- Pull Request-Bewertungskommentare
- Pushes
Das Plugin bietet die folgenden zusätzlichen Site-Einstellungen:
code review api username : GitHub ist sehr restriktiv hinsichtlich der Anzahl der anonymen API-Anfragen, die es zulässt. Diese Einstellung ermöglicht es Ihnen, die Kontoschlüssel eines Discourse-Benutzers für /comments- und /commit-Anfragen zu verwenden. Dies reduziert die Wahrscheinlichkeit, gegen Rate-Limits zu verstoßen, erheblich.
code review catch up commits : Anzahl der Commits, die „nachgeholt“ und für die Themen erstellt werden sollen, wenn Sie auf ein neues Repo stoßen.
code review default parent category: Wählen Sie eine Standard-Elternkategorie für Kategorien, die vom Plugin erstellt werden
code review pending tag: Tag, das allen nicht überprüften Commits zugewiesen wird, standardmäßig pending
code review approved tag: Tag, das genehmigten Commits zugewiesen wird, standardmäßig approved
code_review_followup_tag: Tag, das Nachverfolgungs-Commits zugewiesen wird, standardmäßig follow-up
code review allow self approval: Dürfen Mitarbeiter ihre eigenen 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: Wenn Sie auf die Überspringen-Taste bei einem Commit klicken, wird verhindert, dass dieser Commit für die in dieser Einstellung festgelegte Anzahl von Minuten erneut angezeigt wird.
ÄNDERUNGSLOG
TODO
Extras
Wie Discourse dieses Plugin verwendet
TL;DR - Dieses Plugin wurde entwickelt, um die Nutzung von GitHub durch das Discourse-Team zur Code-Überprüfung zu ergänzen.
Mehr Informationen
Von @sam:
Wir verwenden weiterhin PRs über die GitHub-Benutzeroberfläche und lieben es, PRs für viele Änderungen zu erstellen. Hier hat sich nichts geändert. GitHub ist fantastisch, wir lieben GitHub. Sie haben einen hervorragenden Workflow für Änderungen, die noch nicht eingeflossen sind. Allerdings…
Der Workflow von GitHub für Änderungen, die direkt in das Repository committet wurden, ist schrecklich.
Review schließt eine Lücke, die mit GitHub heute einfach nicht geschlossen werden kann. Wir möchten, dass mindestens ein Teammitglied jede Änderung an unseren verschiedenen, zu Discourse gehörenden Git-Repos überprüft. Wenn wir die von GitHub bereitgestellte Benutzeroberfläche verwenden würden, dürfte niemand jemals etwas anderes als Pull Requests tun. Dies würde uns enorm verlangsamen.
Wir benötigen die Möglichkeit, privat zu kommunizieren, ohne dass die ganze Welt davon erfährt, was bestimmte Änderungen betrifft. Zum Beispiel: Wir sollten diese großartige Korrektur so schnell wie möglich nach
<fügen Sie hier den Namen eines großen Unternehmens ein>bereitstellen, @sam, kannst du das übernehmen?Wir benötigen die Möglichkeit, vorgenommene Änderungen zu genehmigen oder Nachverfolgung anzufordern, was die GitHub-Benutzeroberfläche nicht bietet.
Wir benötigen die Möglichkeit, bestimmte Commits einem Benutzer zuzuweisen. Nehmen wir an, @sam macht einen Commit der einige Fehler enthält Es ist schön, dass wir ihm diesen bestimmten Commit direkt zuweisen, ihn zur Nachverfolgung markieren und dann verfolgen können, dass er nachverfolgt wird.
Discourse ist in der gesamten Konversation ziemlich fantastisch, und die kleinen Funktionen machen einen großen Unterschied. Ich kann sehen, wenn Leute tippen. Ich muss Seiten nie aktualisieren, damit Änderungen angezeigt werden. Zitatfunktionen sind wirklich schön, Bilduploads sind nett, und so weiter.
Discourse ist wirklich gut im Lesen-Status, Sie erhalten sehr starke Garantien, dass Sie jedes einzelne Ding einmal gelesen haben. Bei GitHub habe ich keine Ahnung, welche Commits ich gelesen habe und welche nicht. Wir haben eine unglaublich effiziente Methode, mit dem Informations-Feuerwerk umzugehen.
Und die Liste geht weiter…
Also wirkt Review als Ergänzung zu GitHub. Wir verwenden GitHub derzeit, um mit Änderungen umzugehen, die noch nicht eingeflossen sind. Und wir verwenden Review, um Änderungen, die bereits eingeflossen sind, ordnungsgemäß zu handhaben.

