#summary Gerrit and Melange

= Introduction =

Melange uses Gerrit for code review.

= Setup =

{{{
# setup push-for-review helper alias
git config --global alias.push-for-review '!CURRENT=$(git symbolic-ref --short HEAD) && git push origin  ${1:-HEAD}:refs/for/master%topic=${CURRENT}${R:+,r=${R}} && echo pushed'
# add change-id hook
curl -Lo `git rev-parse --git-dir`/hooks/commit-msg https://gerrit-review.googlesource.com/tools/hooks/commit-msg ; chmod +x `git rev-parse --git-dir`/hooks/commit-msg
}}}

  * Log into the Gerrit UI at least once: https://melange-review.googlesource.com
  * if the email address in your git commits doesn't line up with the account you log into Gerrit with, you must add that email address: https://melange-review.googlesource.com/#/settings/contact
  * If you are a committer, you need to get added to the committer list in Gerrit.

= Code Review =

== Reviewing your branch ==
  # Create a topic branch, work on your change, commit your change.
  # git push-for-review
  # in the Gerrit web UI, explicitly add at least one reviewer
  # review happens.
  # if changes are necessary, commit, rebase, go back to step 2.

== Syncing and preparing your branch ==
  # pull the latest changes to master
     * git checkout master
     * git pull origin master
  # rebase your branch on master git rebase master and fix possible conflicts on the way
     * git checkout your-branch
     * git rebase master
  # git push-for-review
  # if the rebase cleared the review approvals, ask the reviewers for another look. Otherwise, the changes are almost ready to be submitted
  # locally merge your branch into master
     * git checkout master
     * git merge your-branch

= git push-for-review =

The push-for-review alias supports some variations:

if you set an 'R' environment variable, that becomes a reviewer.

{{{
R=john.smith@gmail.com git push-for-review
}}}

You can also specify a change to push:
{{{
git push-for-review a1b2c3
}}}

== Submitting the code ==

  # get code reviewed by someone else, and receive a +2
  # click submit button in web ui

= Interesting Links =

  * https://wiki.openstack.org/wiki/Gerrit_Workflow
