Requesting a code review
As someone who requests code review from your teammates, you typically perform the following sequence of tasks:
- Commit changes to your VCS repository.
- Create a code review.
- Invite participants (reviewers and optionally watchers).
- Discuss issues, if any, by way of exchanging comments with the reviewers.
- Work on resolving the issues, commit the fixes, and add the new revisions to the existing review.
- As soon as reviewers approve your changes, you close the review.
While committing changes is self-explanatory, we'll describe the other steps below.
Create a code review
- Log into Upsource and locate your project in the list:
- Click on the project name to open it. The project home view displays the revisions listed in chronological order:
- Scroll down the list or use the Search field to find the revision you're interested in.
- Move your cursor to the revision entry - a Create review link will appear:
- Click Create review. A new review is created, opened, and its ID is displayed at the top left (JD-CR-27 in our case):
The default review title is the same as your revision which becomes a part of this review.
Add participants to the reviewers or watchers list depending on the action you want them to take.
To add a reviewer or a watcher
You can add as many participants as you wish and whenever you wish: when starting a review, or at any time after that.
The people you add are notified via e-mail and Upsource news feed.
Participate in discussion
You can post comments, addressing them to other participants, and reply to the comments left by reviewers.
There are three types of comments:
- Review comment is not tied up to any particular file or part of code - its subject matter may be anything within the scope of the review.
- Code selection comment is intended to pinpoint a particular code fragment in one of the files being reviewed.
- Line comment is associated with a specific line of code.
To post a line comment
To post a code selection comment:
When a discussion thread comes to a logical end, either you or the reviewer can mark it as resolved.
When reviewers accept or reject your changes, their resolution is indicated with a corresponding flag:
Add new revisions
If the revision you had originally submitted for review was not approved by the reviewers, you can work on the issues,
commit fixes, and attach one or several new revisions to the original review for approval.
This way the whole discussion and revision history is contained within one review,
and as long as the review is open it will always be visible throughout the different revisions.
You can attach a new revision to an existing review either from that revision:
or from the review:
To detach a revision from a review, in the review home view, click the icon next to the revision name:
Open revisions in IDE
When you click this link, the revisions included in the review will be displayed in the Version control tool window of your currently opened IDEA-based IDE. For this option to work, the IDE should have the Upsource plug-in installed and configured.
As soon as all reviewers have approved your changes, and you expect no further input, you can close the review by clicking a corresponding button in the right pane:
A review can go through three different stages:
- Pending - review is created and reviewers assigned.
- Completed - all reviewers completed the review by rejecting or accepting your changes.
- Closed - review is closed by its author, as no further action is required or expected from all participants.
Whether you've created a review by mistake, or want to clean up and get rid of outdated reviews, you can always delete a review no matter what its current status is. Just push the Remove review button.