TortoiseHg Review Board
The TortoiseHg review board dialog is a graphical user interface that is integrated into TortoiseHg 2.0. It controls a Mercurial extension of the same name and allows you to easily post a review directly to your review board installation from the TortoiseHg workbench with a few simple mouse clicks.
- TortoiseHg version 2.0 or higher - https://tortoisehg.bitbucket.org/
- Mdelagra’s fork of the mercurial-reviewboard extension version 3.5 or higher - https://bitbucket.org/mdelagra/mercurial-reviewboard/
- Review Board version 1.5.2 or higher – https://www.reviewboard.org/
First you will need to install TortoiseHg 2.0. Information on how to install and use TortoiseHg can be found at https://tortoisehg.bitbucket.org/manual/2.0/index.html
Once installed you will need to download the mercurial-reviewboard extension from the link above configure your .hgrc to enable the extension by adding following lines:
[extensions] reviewboard = /path/to/reviewboard
The review board dialog has three options
1. Create diff with all outgoing changes
This option will grey out the change sets list and select only highest selected revision. It will create a diff with all the outgoing change sets from the selected revision.
The option could be used if you have many new change sets within the workbench and wish to include them all in a diff. Using this feature means that you will only need to select one change set instead of them all.
2. Create diff with all changes on this branch
This option will also grey out the change sets list, as above, and will create a diff of all changes on the named branch of the selected change set, not just the outgoing ones.
The option could be used when you want to create a new feature with its own named branch and wish to send all the changesets of said feature branch to review board.
Be careful with this option because if you select a change set on a main development branch it will include all changes from the selected change set back to where the branch was first created. This could create a very large diff!
Note: The option refers to a named branch should not be confused with a divergence in a line of development. Please see the Mercurial Branch page for more information – https://mercurial.selenic.com/wiki/Branch
3. Publish immediately – This one is self explanatory, the review will not be posted as a draft.
First you will need to set up the Review Board extension settings in the TortoiseHg settings dialog under the Review Board tab. The Review Board server and username is required because the dialog will get a list of repositories and existing review requests from the server when the dialog is opened. The password is optional, however if you enter it here you will not be prompted for it later.
Important Note: the password will be stored in clear text so if you are worried about security do not save your review board password here.
Once the settings are correct you are now ready to post a review to the Review Board server. To do so, you will need to select an outgoing change, or multiple outgoing changes, from the TortoiseHg Workbench and click the right mouse button to display the context menu. From here you can select Post to Review Board that will open the Review Board dialog.
Within this dialog you can set up the review that you wish post to the Review Board server. You can choose to post a new review or update an existing review. You will also see a list of the change sets that you selected within the workbench.
If the ‘outgoing’ option is not checked the review will contain the change sets from the top to the bottom checked change set. For example, if there are 5 change sets in the list and the first and last are not checked then the review will include change sets 2, 3 and 4 regardless if change set 3 is checked or not.
You can also choose between some options depending on if you are posting a new request or updating a new one.
The review description will contain a list of the change sets posted and their commit messages.