Gerrit is a web based code review system, facilitating online code reviews for projects using the Git version control system.
Gerrit makes reviews easier by showing changes in a side-by-side display, and allowing inline comments to be added by any reviewer.
Gerrit simplifies Git based project maintainership by permitting any authorized user to submit changes to the master Git repository, rather than requiring all approved changes to be merged in by hand by the project maintainer. This functionality enables a more centralized usage of Git.
For one, Gerrit itself, but that is a bit meta :P
As the wiki sees it
git push gerrit HEAD:refs/for/master
git commit --amend
git push gerrit HEAD:refs/for/master
Yes.
Push to ref space refs/drafts/master instead, then assign security reviewers groupSome additional setup needs to be done with access control so that Joe Bloggs can't see that on the git level
You won't be able to do +1,-1 etc, but can do comments, and can provide multiple patch sets for that draft change
When releasing, just publish that change, and push it
You can define different groups of users
Basically every control you can do with gerrit can be limited to a select few
Documentation, HAHAHA, contribute and make code monkey happy, or troll through lots of Java
Most of the time, you can use a standard setup, ie allow most to only +1, a few to +2, a few to manage releases etc
Note, there is actually quite a bit of documentation, it just doesn't have some stuff
You can reduce push rights to an existing git repo to only allow gerrit to push to it, and gerrit can be set up to do that for you on a merge
You can write hooks to do all sorts of things, like link to and update bug trackers, run through a CI tool, notify users when something happens
You name it, someone has probably written a plugin for it, if not, contribute and make code monkey happy