not a Gerrit project
====================

With this error message Gerrit rejects to push a commit if the git
repository to which the push is done does not exist as a project in
the Gerrit server or if the pushing user has no read access for this
project.

The name of the project in Gerrit has the same name as the path of
its git repository (excluding the '.git' extension).

If you are facing this problem, do the following:

. Verify that the project name specified as git repository in the
  push command is typed correctly (case sensitive).
. Verify that you are pushing to the correct Gerrit server.
. Go in the Gerrit WebUI to 'Admin' -> 'Projects' and check that the
  project is listed. If the project is not listed the project either
  does not exist or you don't have
  link:access-control.html#category_read['Read'] access for it. This
  means if you certain that the project name is right you should
  contact the Gerrit Administrator or project owner to request access
  to the project.

This error message might be misleading if the project actually exists
but the push is failing because the pushing user has no read access
for the project. The reason that Gerrit in this case denies the
existence of the project is to prevent users from probing the Gerrit
server to see if a particular project exists.


GERRIT
------
Part of link:error-messages.html[Gerrit Error Messages]
