Client commands and hooks can be downloaded via scp, wget or curl from Gerrit’s daemon, and then executed on the client system.

To download a client command or hook, use scp or an http client:

$ scp -p -P 29418 ~/bin/
$ scp -p -P 29418 .git/hooks/
$ curl -Lo ~/bin/gerrit-cherry-pick
$ curl -Lo .git/hooks/commit-msg

For more details on how to determine the correct SSH port number, see Testing Your SSH Connection.



Download and cherry-pick one or more changes (commits).


Client hooks can be installed into a local Git repository, improving the developer experience when working with a Gerrit Code Review server.


Automatically generate `Change-Id: ` tags in commit messages.


Aside from the standard Git server side actions, Gerrit supports several other commands over its internal SSH daemon. As Gerrit does not provide an interactive shell, the commands must be triggered from an ssh client, for example:

$ ssh -p 29418 gerrit ls-projects

For more details on how to determine the correct SSH port number, see Testing Your SSH Connection.

User Commands

gerrit apropos

Search Gerrit documentation index.

gerrit ban-commit

Bans a commit from a project’s repository.

gerrit create-branch

Create a new project branch.

gerrit ls-groups

List groups visible to the caller.

gerrit ls-members

List the membership of a group visible to the caller.

gerrit ls-projects

List projects visible to the caller.

gerrit query

Query the change database.

'gerrit receive-pack'

'Deprecated alias for git receive-pack.'

gerrit rename-group

Rename an account group.

gerrit review

Verify, approve and/or submit a patch set from the command line.

gerrit set-reviewers

Add or remove reviewers on a change.

gerrit stream-events

Monitor events occurring in real time.

gerrit version

Show the currently executing version of Gerrit.

git receive-pack

Standard Git server side command for client side git push.

Also implements the magic associated with uploading commits for review. See Creating Changes.

git upload-pack

Standard Git server side command for client side git fetch.

Administrator Commands

gerrit close-connection

Close the specified SSH connection.

gerrit create-account

Create a new user account.

gerrit create-group

Create a new account group.

gerrit create-project

Create a new project and associated Git repository.

gerrit flush-caches

Flush some/all server caches from memory.

gerrit gc

Run the Git garbage collection.

gerrit gsql

Administrative interface to active database.

gerrit index activate

Activate the latest index version available.

gerrit index start

Start the online indexer.

gerrit logging ls-level

List loggers and their logging level.

gerrit logging set-level

Set the logging level of loggers.

gerrit ls-user-refs

Lists refs visible for a specified user.

gerrit plugin add

Alias for 'gerrit plugin install'.

gerrit plugin enable

Enable plugins.

gerrit plugin install

Install/Add a plugin.

gerrit plugin ls

List the installed plugins.

gerrit plugin reload

Reload/Restart plugins.

gerrit plugin remove

Disable plugins.

gerrit plugin rm

Alias for 'gerrit plugin remove'.

gerrit set-account

Change an account’s settings.

gerrit set-members

Set group members.

gerrit set-project

Change a project’s settings.

gerrit set-project-parent

Change the project permissions are inherited from.

gerrit show-caches

Display current cache statistics.

gerrit show-connections

Display active client SSH connections.

gerrit show-queue

Display the background work queues, including replication.

gerrit test-submit rule

Test prolog submit rules.

gerrit test-submit type

Test prolog submit type.


Kills a scheduled or running task.


Alias for 'gerrit show-queue'.


Execute a command as any registered user account.