Since Tuleap 9.5 version, you can do code review using the Pull Request plugin. Here are how it works and why you should consider doing code review

Pull Requests home in Tuleap

What is a Pull Request

A Pull Request is one of the method to do code review. It is a way of submitting new code to a project. It is often the advised method of submitting contributions to code using a distributed version control system (DVCS) such as Git.

A pull request happens when a developer asks to commit changes from an external repository, to be considered for inclusion into the main feature or project repository.

Once a pull request is generated, other developers can review the set of changes, discuss potential modifications, and even push follow-up commits if needed. Pull request is more than just a notification, it’s a discussing about the additional proposed code. Teammates can post feedback in the pull request and even tweak the feature by pushing complementary commits.

All these discussions can be now tracked directly inside your Git in Tuleap.

Discussion after a request asking your upstream project to pull changes into their tree

Why code review is valuable

Better code : pairs of eyes catch more bugs or regressions, improve code readability and errors of design

: pairs of eyes catch more bugs or regressions, improve code readability and errors of design Shared knowledge : code review facilitates learning from mistakes without breaking things (!)

: code review facilitates learning from mistakes without breaking things (!) Enforce coding standards : code review usually be part of a set of develop guidelines, best practices and programming styles that developers agree when writing code

: code review usually be part of a set of develop guidelines, best practices and programming styles that developers agree when writing code Merge with confidence. No more late Friday fixes!

Pull Request in Tuleap

Tuleap Pull Request is a light-weight code-review tool.

Comment lines of the diff

There is no one single way to use Pull Requests. The way you will use it depends on your team size, the knowledge team members have with Git and the workflow you are familiar with.

Here are what you can do with the Pull Request plugin, to be be linked to your Git:

Create requests across branches in the same repository

Create requests from a personal fork

Comment in files reviewed

Comment requests globally

Create (cross)-reference requests from any point of Tuleap

Integrate with Jenkins to know if tests passed on the code to integrate

Get a dedicated dashboard to follow-up pull requests status

Choose your code review workflow

Basic Workflow

You can use Tuleap Pull Request as simple workflow. It doesn’t require specific setup or to do advanced commands with Git. It is suited for a small team or for Git beginners.

This is the easiest way to start with code reviews because it basically changes nothing to developers workflow : they create branches, commit within and when the work is ready, merge in master. Learn more in Tuleap documentation

Advanced Workflow

For developers with more Git skills there are two popular practices:

Rebase: it allows to move branches around by changing the commit that they are based on.

Rebase and squash: in addition to rebasing your work with the target, “squash” means that you will rewrite the branch history to only keep what is relevant as history steps.

Those two practices happen at the end of the review cycle, when the branch is “ready to go”. Learn more in Tuleap documentation

Want technical details?

Tuleap Pull Requests feature has been mainly developed by Sogilis, one of Tuleap company partner. Thanks to the team!

Simon Denier @simondenier, one of their developer, wrote a detailed article about the intricacies of developing such a system for inline comments.

Explore Tuleap Pull Requests

See it live in Tuleap online meetings Detailed documentation