Helix Swarm is the free code review tool that works with Helix Core — version control from Perforce. You can unite your teams and streamline your code review process with our scalable web-based tool.




Full Video Transcript

Once a review has been created, Swarm provides several mechanisms for collaboration.

The Reviews page shows a list of all open reviews in various states indicated by the icons in this column.

We can filter the list based on these icons. Here we can limit to the reviews that have failed or passed automated tests. When choosing one of these we can see reviews based on their current state. Here we can see reviews that do not or do have reviewers designated. Clicking this icon shows reviews that we have initiated, and here we can limit the view by Swarm Project or branch.


Let's look at Joe Coder's review #12376. Clicking on the ID link takes us to the Review where we can view the files and comments.

We can expand each file to see the changes between versions, or we use “n” as a hotkey to jump to the next change, and “p” to go back to the previous change. Blue areas indicate lines with modifications, green indicates added information, and red indicates lines that have been removed.

Here, we can mark a file as being Read, which can be helpful if there are many files in a Review. When a file is Marked as Read, the icon colors invert and the file is muted. If a Read file is updated in the Review, the Read flag will be reverted back to unread.

While looking at a review, we might run across something that needs to be changed. We can add a comment next to the relevant text, then change the state of the review to “Needs Revision” to let other reviewers and the author know that the file still needs work.

Alternatively, we could get a local copy of the file and modify it as part of the review. Let's have John edit the EBolt.java file. To obtain a local copy, we unshelve it from the changelist using the Review ID number.

In P4V, logged in as John Wakeman, we press Cntl-G to bring up the Go To dialog. With Changelist selected from the pulldown menu, we enter the Review ID number, 12376.

Note, the changelist we are unshelving from is managed by Swarm so we do not want to modify it directly in P4V. This is why we unshelve the files into John's own changelist.

From this dialog, select the file, and right-click to select "Unshelve". Add it to a New pending changelist. Click "Unshelve". This new numbered pending changelist has the description field prepopulated with information. Unshelving puts the file into a new changelist in John's workspace.

Let’s make a quick edit to the file. Once our changes are complete, we update the existing Swarm review with the new version by shelving the file back to the Swarm Review ID. To do so, double-click on the numbered changelist. In the Description field, add "#review" followed by a dash, then the Swarm review ID number. Click the Save button. Next, right-click on the changelist and select Shelve.

Back in Swarm, the new file version now is included in the original review. We can quickly diff the two versions in the review here. We can also diff any two versions of the same file by selecting the versions here.

Now from this dropdown menu, John selects “Needs review” and enters a comment to notify the other reviewers of the change.

Project members and other reviewers receive an email notification and an entry in their Activity stream showing the new status. Aruna, a reviewer, can open the review to have a look at the change and vote as desired, or Approve and Commit the change inside Swarm.

Thanks for watching.

Course - Using Swarm for Collaboration