[haiku-development] Re: Apply Clang work from midar-github.master

  • From: Sean Collins <smc.collins@xxxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Sun, 15 Dec 2013 19:34:40 -0500

Adrien Destugues wrote:
Not at all.

The change is very welcome, but we want to review it. I don't know any project that will grant commit access to random people and let them mess with the sourcecode. Tools like gerrit, or pull requests on github or whatever, allow to make this quite painless on both sides. We decided to not use github for our main hosting, which makes managing pull requests a bit difficult for us, that's why we should go with gerrit.

It's a great tool to not only track the patches, but also keep them up to date, review them (line-by-line or global reviews), and so on.

The strict policy on merging only commits that do the right thing, follow the coding guidelines, and comply with the "Haiku Way" (whatever that means) is part of what makes Haiku work nicely. We keep saying everyone they can fork if they don't like that policy, yet it didn't happen. I guess no one is bothered enough.

In the long term, I think even people with commit access may go through Gerrit to submit their changes. This would allow peer review and testing before things get in the nightlies and break them. One project where they use a similar policy is OpenOCD. Direct commits to their git tree are allowed, but only for small bugfixes. Anything more involved should go through Gerrit and be reviewed there. They have a vote system that prevents commits with a negative score to be merged. This works very well for them, allowing the main codebase to stay clean and mostly bug-free, and still allowing people to easily merge the latest version of a patch in their own git checkout to test it and report on Gerrit.

I don't see how this is raising the bar for new commiters, quite the opposite. It allows some kind of mentoring through code reviews, helping people to get up to speed with our rules.

I have been loosely following the Clang work, its been going for almost a year or more now.


Sean

Other related posts: