[Members] git access
ralphm at ik.nu
Wed Jul 31 09:20:46 UTC 2013
Peter Saint-Andre <stpeter at stpeter.im> wrote:
>-----BEGIN PGP SIGNED MESSAGE-----
>Currently most of our key information (XEPs, schemas, registries) is
>under source in a git repository that lives on one of the XSF's
>machines. (Ideally, our full website would be under source control.)
>The question arises: what is the best policy for granting access to
>the source control repository?
>I would be comfortable with giving access to all XSF members, so that
>more people could help with improving / fixing things.
>I could understand if XSF members would prefer some other policy
>(e.g., only XMPP Council members have commit access).
>Please note that there is a difference between committing to the
>source control repository and pushing changes to the website. For
>example, even if we give XEP authors check-in privileges we still
>wouldn't push Draft or Final specs to the website unless the Council
>approves. Similarly, the XEP Editor role (which might be a team) might
>need to review changes that have been submitted before updating an
I've also read some of the other responses, and I think that self-hosting tools like a reviewing system, a repository viewer, diff tools and the like is a drag. Trust me, I've been there. Sure, you can run Trac or Gerrit and all that, but it appears to me that our Infrastructure Team has enough to do already.
Others have already suggested GitHub, and I support that. It would give us the ability to have issues, process pull requests and has pretty good support for reviews with the ability to add in-line comments in commit diff views.
There are also many plugins to other hosted services available. One specific example is travis-ci, which would allow us to have people initiate a build process on their feature branch. For XEPs, this could trigger the tools that build the HTML renderings. Syntax or other errors would should up immediately, even before the review.
We already have a so-called GitHub Organization in place (http://github.com/xsf), and this allows fine-grained access control to repositories with teams. Amongst many other things, you can control who can push to the repositories hosted by the XSF with Teams.
I'm not sure if you'd need to do that on the level of each individual XEP. People can simply commit on their own feature branches on their own account, and then submit a pull request. The Editor and the Council could review and accept pull requests. Similarly, for the web site, a team of editors could do the same.
I do believe that we should continue to self-host synchronized copies of repositories that are made available via GitHub, just not all the other tools.
Of course, for people not familiar with git and/or source control in general, the possibility for reaching out to the Editor -- on our mailing lists, our MUC rooms and/or with a direct message -- still remains.
As for our own hosted stuff, my colleague Jesse Noller recently tweeted  about free-of-charge Rackspace Cloud accounts for OSS projects and communities. I think that also applies to us, and I'm more than happy to look into this, if that's helpful.
More information about the Members