Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Short Question
Does a cost-effective tool / workflow exist to facilitate code reviews in a small team? More specifically, a small team that relies on post-commit code reviews.

Background
Our team currently consists of 3 full time and 1 part time software engineers, with plans on hiring more in the near future. Due to our team size and volume of projects we all must juggle, the pre-commit workflow that major tools (such as Review Board and Code Collaborator) use is not obtainable for us right now. The best we can do at the moment is to perform post-commit reviews before major releases or as time permits. Nearly all of our projects are hosted on RepositoryHosting.com (which I highly recommend) and contain a mixture of SVN and GIT repositories.

Current Thoughts
Since I cannot find a tool that fits our needs right now, I am turning to TRAC that is built into our repository's site. At the moment we use TRAC to file tickets and track milestones, so to me this seems like a natural fit for code review results as well.

The direction I am heading in right now is to use a spread sheet(s) to log all of the bugs and comments. Do some macro magic to get it in a format that I can use TRAC's import ticket method and use TRAC's ticketing system to create the action items / bug reports automatically. The auto ticket generation is darn near a must have, adding in bugs and comments one at a time from a web-gui is really painful.

Secondary Question
If this workflow makes sense, is there a good / standard template to use as a code review log?

share
comments disabled on deleted / locked posts

migration rejected from stackoverflow.com Aug 26 '13 at 1:29

This question came from our site for professional and enthusiast programmers. Votes, comments, and answers are locked due to the question being closed here, but it may be eligible for editing and reopening on the site where it originated.

closed as off-topic by gnat, MichaelT, Bart van Ingen Schenau, Dynamic, mattnz Aug 26 '13 at 1:29

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to recommend a tool, library or favorite off-site resource are off-topic for Programmers as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it." – gnat, MichaelT, Bart van Ingen Schenau, Dynamic, mattnz
If this question can be reworded to fit the rules in the help center, please edit the question.

3 Answers

I don't see why "Review Board" wouldn't work as a post-commit review tool - all you need to be able to do is post a diff, and any version control system can generate a diff from a commit log. But maybe I'm overlooking something.

What would be nice (and I'm not sure if Review Board can do this) is to simply be able to put a revision number/git hash into Review Board and have it automatically generate the diff.

At as previous job, we used CodeStriker, which is a Perl-based web code review tool,and it was able to do this with SVN repositories. I was able to hack it to do the same with Perforce repositories. Unfortunately, the project seems to be somewhat inactive - it looks like there's been a little bit of work to support Git, but I'm not sure how far along Git support is.

Too bad - the UI might have been a bit clunky looking coimpared to Review Board, but I think it actually worked better than Review Board for me. Being able to commit a change (we did the commits to per-developer branches, then merged them to trunk when the commit passed code review) and just plug the commit ID into CodeStriker was really nice.

share
1  
Thanks for the input. My reasoning about not using Review Board is that I would really like to have a Web front to it. (From Review Board FAQ): "Does Review Board support post-commit review? Yes, Review Board can handle post-commit review, though currently you need to post-review for this. See Posting Committed Code for more information. Review Board was initially designed for pre-commit review and large changes need to be made before post-commit reviews can be handled in the web UI. We plan to implement this in a future release." –  Adam Lewis Jul 22 '11 at 13:38
    
Well, we use Review Board for both pre-commit and post-commit review. It's quite convenient to send code (either pre- or post-) to Review Board from within TortoiseHg, which sports a Review Board plugin. –  Helgi Aug 8 '11 at 11:00
add comment

Our company uses a Google back end for our email and web apps. I stumbled upon rietveld ( Google's online code review, but installed in our own domain via the app engine ) and we have been using it for several months now. Over all it has been a very pleasant experience.

I ended up tweaking the provided upload.py to support diff's even if the file didn't exist in a prior revision. Other than the small tweak, the only complaint I have is that there is no good way to generate reports / records showing the review results.

share
add comment

We use Gerrit Code Review- which started as a simple set of patches to Rietveld. Its provides a blend of review after commit and review before commit models, and would be ideally suited to your needs.

Code is committed for review, the tool then manages the life cycle though to the main code base. It is possible to pull the reviews not yet completed into other branches and clones meaning un-reviewed code is available for other developers.

I don't know how it would integrate with RepositoryHosting.com.

A red flag I read in your post is the "when time permits" - reality for most software developers (for many reasons) is that code review is lower priority than the next feature / bug fix - so if the process does not enforce it, it will not get done, despite the best intentions.

share
    
I agree with that red flag. This is why I've been trying to find something to make life easier when doing reviews. We do make it a point that no un-reviewed code is sent to the field, sales demos and engineering demos are a different story. Sadly the add-on support for RepositoryHosting.com is minimal. –  Adam Lewis Oct 28 '12 at 14:14
    
Looking at Gerrit, the biggest issue I see is that it appears to be Git only. We have about a 50/50 mix of Git and SVN. –  Adam Lewis Oct 28 '12 at 14:22
    
Missed that detail - it might be a problem. GIT does have nice hooks into SVN, but I don't know how easily it could be merged with Gerrit. One thing to consider is a migration away from SVN and GIT to just one revision control tool. –  mattnz Oct 30 '12 at 3:42
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.