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