Gerrit (Software)

kollaboratives Review-System für Git

Gerrit ist ein auf Zusammenarbeit basierendes Review-System für Git. Mit Gerrit lassen sich Änderungen an einer Software diskutieren und schließlich in diese integrieren.

Gerrit

Logo
Screenshot
Weboberfläche von Gerrit 2.2.1 auf Chromium (Browser)/OS X
Basisdaten

Entwickler Google Inc.
Aktuelle Version 3.10.2[1]
(9. Oktober 2024)
Betriebssystem Java EE
Programmier­sprache Java, Servlet, GWT
Kategorie Code-Review
Lizenz Apache 2.0[2]
deutschsprachig nein
www.gerritcodereview.com

Das Open-Source-Projekt Gerrit eröffnet die Möglichkeit, alle Änderungen von einem oder mehreren Benutzern bestätigen zu lassen, bevor sie in den offiziellen Quellcode integriert werden. Dabei kann auch ein automatischer Build-Prozess, wie ihn etwa Jenkins/Hudson zur Verfügung stellt,[3] als Unterstützung verwendet werden.

Geschichte

Bearbeiten

Die Entwicklung von Gerrit begann, als ein System zur Quellcodeverwaltung für die Entwicklung des Betriebssystems Android gesucht wurde. Da an der Entwicklung von Android zahlreiche Google-Entwickler beteiligt waren, sollte dieses System einen ähnlichen Umfang wie das zuvor von Google verwendete Review-System Mondrian haben. Dazu wurde zunächst die Software Rietveld eingesetzt. Als sich zeigte, dass die Entwicklung dieser Software nicht schnell genug voranging, wurde Rietveld geforkt; es entstand Gerrit 1.0. Der Name Gerrit soll an den niederländischen Architekten Gerrit Rietveld erinnern.[4]

Für Gerrit 2.0 wurde der gesamte Code des Forks neu geschrieben. Während Gerrit ursprünglich in Python programmiert war, ist es ab Version 2 in Java EE (Java Platform, Enterprise Edition, Java Servlet mit SQL) verfasst.[5]

Workflow

Bearbeiten

Das Review-System Gerrit wird zusammen mit einem Git-Repository verwendet.

Das Git-Repository enthält den Quellcode einer Software. Änderungen, die an diesem Quellcode vorgenommen werden sollen, könnten durch Benutzer mit den entsprechenden Rechten grundsätzlich mit dem Git-Befehl git push direkt in das Repository geschrieben werden.

Stattdessen kann jedoch auch eine Gerrit-Installation in der Form vorgeschaltet werden, dass die gewünschten Änderungen nicht direkt an das Repository gesendet werden können, sondern stattdessen an die Gerrit-Installation geschickt werden müssen. Gerrit bietet eine Webschnittstelle, in der die Änderungen diskutiert und verbesserte Versionen der Änderungen hochgeladen werden können. Es ist möglich, Änderungen als Diff-Ansicht zu vergleichen. Reviewer können ihre Kommentare an spezifische Zeilen anfügen und so auf einfache Weise den direkten Bezug zu einer bestimmten Codezeile herstellen. Über jeden Änderungssatz (Patch-Set genannt) kann abgestimmt werden. Nachdem ein Patch-Set die benötigten Stimmen erhalten hat, können Benutzer, die über die notwendigen Rechte verfügen, die Änderungen über die Webschnittstelle in das Repository schreiben.[6]

Verwendung

Bearbeiten

Die folgende Liste enthält beispielhaft einige bekannte Unternehmen und Projekte, die Gerrit verwenden oder verwendet haben:

Literatur

Bearbeiten
Bearbeiten
Commons: Gerrit – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

Bearbeiten
  1. Release 3.10.2. 9. Oktober 2024 (abgerufen am 21. Oktober 2024).
  2. Angaben zur verwendeten Lizenz. In: storage.googleapis.com. Abgerufen am 17. August 2017 (englisch).
  3. Gerrit Trigger for Jenkins
  4. Informationen zur Geschichte von Gerrit Code Review (abgerufen am 1. Juni 2011)
  5. code.google.com
  6. Schematische Darstellung des Workflows mit Git und Gerrit anhand des Android-Projektes (abgerufen am 1. Juni 2011)
  7. android-review Code Review. Abgerufen am 24. Juni 2012.
  8. Introducing Gerrit – a scalable code review system. 23. Februar 2011, archiviert vom Original (nicht mehr online verfügbar);.
  9. Gerrit im TYPO3-Projekt (abgerufen am 1. Juni 2011)
  10. Community section of official Homepage
  11. Gerrit Server der Eclipse Foundation
  12. GerritForge. Abgerufen am 11. Februar 2018.
  13. GWT-Review Gerrit homepage. Abgerufen am 26. Januar 2014.
  14. Introducing Gerrit – Code Review and Community Contributions. Archiviert vom Original (nicht mehr online verfügbar) am 18. April 2012; abgerufen am 23. Juli 2011.  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.kitware.com
  15. Announcement of archiving the ITK gerrit code review. Abgerufen am 6. Mai 2020.
  16. Gerrit for LibreOffice. 16. Juni 2012, abgerufen am 24. Juni 2012.
  17. gerrit.libreoffice Code Review. Abgerufen am 24. Juni 2012.
  18. Wikimedia engineering moving from Subversion to Git — Wikimedia blog. Blog.wikimedia.org, 15. Februar 2012, abgerufen am 21. Juni 2012.
  19. Gerrit. MediaWiki, 12. Juni 2012, abgerufen am 21. Juni 2012.
  20. Gerrit Code Review OpenAFS. Abgerufen am 4. Mai 2020.
  21. Gerrit Code Review OpenDev including OpenStack projects. Abgerufen am 6. Mai 2020.
  22. heise.de
  23. codereview.scilab.org (Memento des Originals vom 31. Oktober 2012 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/codereview.scilab.org