branch ... not found
====================

With this error message Gerrit rejects to push a commit for code
review if the specified target branch does not exist.

To push a change for code review the commit has to be pushed to the
project's magical `refs/for/'branch'` ref (for details have a look at
link:user-upload.html#push_create[Create Changes]).
If you specify a non existing branch in the `refs/for/'branch'` ref
the push is failing with the error message 'branch ... not found'.

To fix this problem verify
* that the branch name in the push specification is typed correctly
  (case sensitive) and
* that the branch really exists for this project (in the Gerrit WebUI
  go to 'Admin' -> 'Projects' and browse your project, then click on
  'Branches' to see all existing branches).

If it was your intention to create a new branch you can either
* bypass code review on push as explained link:user-upload.html#bypass_review[here] or
* create the new branch in the Gerrit WebUI before pushing (go to
  'Admin' -> 'Projects' and browse your project, in the 'Branches'
  tab you can then create a new branch).
Please note that you need the access right '+2 Create Branch' in the
link:access-control.html#category_pHD['Push Branch'] category to create new branches.


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