With Tuleap, you can choose your preferred version control system, Git or SVN, for each project.
In addition, using Git, you will be able to facilitate online code reviews with the Git Pull Request plugin. Here are how it works and why you should consider doing code review.
Pull Requests home in Tuleap
What is a Git Pull Request
A Pull Request is one of the method to do code review into Git tool. 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
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.