On Sat, Oct 05, 2019 at 04:09:34PM -0400, Jim Jagielski wrote:
> Various PMCs have made their default/de-facto SCM git and have seen an 
> increase in contributions and contributors...
> 
> Is this something the httpd project should consider? Especially w/ the 
> foundation officially supporting Github, it seems like time to have a 
> discussion about it, especially as we start thinking about the next 25 years 
> of this project :)
> 

Hi,

At W3C, all the Working Group spec as well as some developer work has 
moved on over to github.  We use github's hooks API to connect actions 
on github repositories with our mailing lists and other aspects of the 
main server.

Yes, git and github may have a steeper learning curve that svn, 
but people now seem satisfied with the current workflow.

Yes, having this kind of work hosted at github has increased
its visibility and getting unexpected external contributions.

For the record, part of this change of system required migrating 
CVS repositories from our servers at W3C to github, while preserving
all the history of commits and names of commiteers, using readily
available tools. There were some incompatibilities between CVS unmerged
branches, though, and we had to take decisions in that case. This may
not be the case for SVN. 

Another important reason that pushed for this migration is that CVS
clients are becoming less available across platforms. I'm not sure
if that's the same situation for SVN, although I see there are still
recent releases of it. It helps it's hosted at ASF.

For simplicity, from here one I will use "apache" to refer to the
httpd server.

I think that one step for migrating apache to github would require
your writing down a list of things you need from a DRCS and then
working on how to map them to github.

One thing that I find important is that you evaluate how you're
going to handle contributions, or, in git parlance, merge requests (MR).
These are public visible in the repository. Having too many hanging
out without closure doesn't speak well for a project. I talk of this
from experience of seeing that bug reportss and proposed bug fixes are 
quickly fixed and integrated into apache (Thanks Yann!),  however,
proposal for extensions of existing modules, even when developed in
consultation with the list, just go dormant and require multiple
prodding today and even like that, the hit ratio is really low in my
opinion. After I while this just demotivated me from continuing proposing
them to this list and just stick to the ocassional bug report / patches..
See for example the latest one, dating from 2015 [1]. When this
happens in github, the result may be that someone forks your project
and makes a new one out of it.

Another thing from the migration that I think you should consider
is what you're going to do with your existing bugzilla content.
Are you going to keep using it or use the github issues for that?
Are you going to migrate open issues there? How about the links
in reports pointing to your svn repository?

Finally, as much as migrating to github can be interesting, you must
also consider not being tied to github in case any future policy changes
don't please you. You must be prepared to be able to migrate to another
system if needed and see how much of the github environment can follow you.
Can the issues follow you? How about the discussions in github? etc.
What parts of github are you going to use, which ones disable (and can
they be disabled?).

Other alternatives for github are gitlab. You can install an instance
of gitlab locally or use their repository. Upon the announcement of
MS buying github, some projects migrated to gitlab.

If it may help, I can put you in contact with the people in our
team that can describe more in detail how W3C is using github today,
the hooks, CI,  how we backup it, and the advantages and limitations we
have found so far.

Hope this feedback helps,

--josé

[1] https://bz.apache.org/bugzilla/show_bug.cgi?id=58025

Reply via email to