Hi all,
I have been making my first experiences with the Git-based incubator – and came up with the question how the contribution process for the community (i.e. non-committers) is supposed to work. Different Eclipse projects seem to have different approaches, so I wonder what you think about it and what you would prefer. So far, I found the following ways to contribute:
1. Attach a patch (created using the git format-patch command) to the bugzilla ticket. The process would be along the lines of the current svn-based contribution.
2. Use Github to host a repository where contributors can push to. (I haven’t had a closer look into that option yet so I don’t know much about it.)
3. Have a Gerrit where contributors can push to. Committers can review the change there and merge accepted changes into the main Git.
4. Potentially (haven’t seen it and don’t know whether that’s really an option): Have separate branches for the incubator projects into which contributors are allowed to push. Only committers can merge commits into the master branch.
Although the first option is most similar to the current process, I have to admit that I don’t like it much. There’s too much manual work involved and it’s difficult to integrate the pending contributions into automated build environments.
I personally would prefer to have a Gerrit to contribute to. It makes it easier (for both humans and build servers) to fetch a particular change and IMHO it improves the reviewing process a lot. Committers could be allowed to push to the Git repository directly bypassing Gerrit, just in case that they find Gerrit more annoying than helpful for their own work. Also, I have been told that it’s actually not a big deal to request a Gerrit being added for an existing Git-based Eclipse project.
Option 4 is an idea that we came up with while discussing the contribution process. I don’t know whether that’s something you would want to or be allowed to implement on Eclipse infrastructure. But I’m currently talking about the incubator only, maybe that makes a difference? If possible, however, it could be an alternative way to make contributions by the community easier without requiring an additional Gerrit.
I don’t know anything about option 2 besides the fact that it exists :-)
So what do you think about that? How would you like to work with contributions by the community?
Best regards,
Sabine