For demo purposes I have set up a critic instance based on the gecko-dev
repository [1] and added a trivial sample review [2]. To review changes
on here you will need to create a user account; this can be done from
the "Sign In" link at the top of the page. To push new reviews, or new
changesets to existing reviews, you will need to have an account on the
server; I should be able to set this up if you send me your ssh public
key / username (but probably not before morning, BST).
There is a tutorial at the top of the page, but some tips to get you
started:
* Reviewers are automatically assigned based on filters. To mark
yourself as a reviewer for a particular bit of code use the "Add Filter"
button on the home page.
* Both reviewers and non-reviewers can add issues or notes to particular
lines in a review. Issues block the review from completing, notes do not.
* The concept of "code reviewed" and "issues remaining" are orthogonal.
Once you have reviewed some code, you mark it as reviewed, even if you
found issues. A review is marked as complete when there are 0
outstanding issues and 100% of the code is reviewed.
* After interacting with a review (marking some code as reviewed or
adding some comments) you need to press "Submit" at the top of the
screen to publish the changes.
* Creating a review is via git push. So you would initially
git remote add critic
ssh://
user...@mozcritic.hoppipolla.co.uk/var/git/gecko-dev.git
Then to create a review you would typically do something like:
git push --set-upstream critic HEAD:username/branch_name
At this point you will be prompted to select the commits that should be
in the review via the UI (but see below). After that just
git push
every time you have more commits that address issues in the review. This
will mark any issues on lines that were touched by the new commit as
"addressed". Of course the reviewer can reopen these if the commit
doesn't actually address them. If you set "createViaPush" in the critic
config, branches with the name r/(something) will automatically generate
reviews containing their HEAD at the time of first push.
Note:
* The web UI is not HTTPS, so your password will be sent in the clear.
* Because this is a low-spec VPS and gecko-dev is huge there are some
pretty significant performance issues (in particular git pack-objects is
very very slow, which can make pushes seem very very slow, although
actually the commits are there already)
[1]
http://mozcritic.hoppipolla.co.uk
[2]
http://mozcritic.hoppipolla.co.uk/r/1