The Gerrit server functionality can be extended by installing plugins.

Plugin Installation

Plugin installation is as easy as dropping the plugin jar into the $site_path/plugins/ folder. It may take a few minutes until the server picks up new and updated plugins.

Due to caching, you might need to flush your browser cache after installing a plugin. Users will usually see the result within several minutes.

Plugins can also be installed via REST and SSH.

Plugin Development

How to develop plugins is described in the Plugin Development Guide.

If you want to share your plugin under the Apache License 2.0 you can host your plugin development on the gerrit-review Gerrit Server. You can request the creation of a new Project by email to the Gerrit mailing list. You would be assigned as project owner of the new plugin project so that you can submit changes on your own. It is the responsibility of the project owner to maintain the plugin, e.g. to make sure that it works with new Gerrit versions and to create stable branches for old releases.

Core Plugins

Core plugins are packaged within the Gerrit war file and can easily be installed during the Gerrit initialization.

Note that the documentation and configuration links in the list below are to the plugins' master branch. Please refer to the appropriate branch or revision for the Gerrit version you are using.

codemirror-editor

CodeMirror JavaScript plugin for Gerrit.

commit-message-length-validator

This plugin checks the length of a commit’s commit message subject and message body, and reports warnings or errors to the git client if the lengths are exceeded.

delete-project

Provides the ability to delete a project.

download-commands

This plugin defines commands for downloading changes in different download schemes (for downloading via different network protocols).

gitiles

Plugin running Gitiles alongside a Gerrit server.

hooks

This plugin runs server-side hooks on events.

plugin-manager

This plugins provides an initial wizard to discover and install Gerrit plugins. Per default GerritForge CI is used to download the plugin artifacts from, but this can be changed per plugin configuration.

replication

This plugin can automatically push any changes Gerrit Code Review makes to its managed Git repositories to another system. Usually this would be configured to provide mirroring of changes, for warm-standby backups, or a load-balanced public mirror farm.

reviewnotes

Stores review information for Gerrit changes in the refs/notes/review branch.

singleusergroup

This plugin provides a group per user. This is useful to assign access rights directly to a single user, since in Gerrit access rights can only be assigned to groups.

webhooks

This plugin allows to propagate Gerrit events to remote http endpoints.

Other Plugins

Besides core plugins there are many other Gerrit plugins available. This Gerrit home page for plugins lists them.