deborah: The management regrets that it was unable to find a Gnomic Utterance that was suitably irrelevant. (gnomic)
deborah ([personal profile] deborah) wrote in [site community profile] dw_dev2012-04-29 02:40 pm
Entry tags:

Git, Mercurial, github, bitbucket

I want to spin off a new post from the log of last night's IRC developer meeting. The topic of GitHub came up in the meeting, and some concerns with that idea have been raised in the comments of the previous post. [personal profile] vlion's concerns largely address the difference between mercurial and git, whereas [profile] karelia's concerns also address that difference but touch incidentally on the hypothetical benefit of working in the more public environment of Github.

I was talking to [personal profile] allen and he pointed out that there are really two different issues in play here, because we can go to a shared, public, relatively popular, FLOSS-friendly environment without ever leaving mercurial, namely, Bitbucket.

I'd actually say there are three questions:
  1. Are there benefits to git over mercurial, and if so, are those benefits enough to outweigh the cost of switching to a new source control system?
  2. Would we like to move our source control management to a public, shared, FLOSS-friendly environment? If so, why? Do we think it would be more friendly to our current developers, do we think it would make it easier to bring in new developers, some combination of the two, or something else?
  3. If we want to move to a shared environment, do we feel that there is a strong reason that it should be Github? What are those reasons, if so? If we think git is worse than mercurial, but we do think there's a benefit to moving to Github, which reason should prevail?


Actually, we should probably add a fourth question, which is "would any of our needs be better served by using mercurial more in the fashion for which it was intended?"

Keep in mind when I write these questions that I use github for other projects and like it,and I have never used mercurial intensely enough to have strong feelings about it either way. Personally I fell in love with Perforce at an early date and find all other VCS systems to be it pale yet free imitations. But I do think that if we make a switch like this, these are the questions we need to answer.

[personal profile] alexbayleaf 2012-04-30 11:23 am (UTC)(link)
My only real thought on this is that "give me a link to your github" has become almost standard in hiring in open source land. I love the idea that DW is giving our developers skills they can use in their careers, especially developers who might be coming into software development via non-traditional channels (eg. not via a comp sci degree), and there's definitely something to be said for making DW developers' work more visible in that way.

Wait, I just realised I have another point. The Perl community at large uses github extensively, so cross-fertilisation with them would be a plus (from both directions: our developers would be better equipped to submit patches to other Perl projects, and external Perl developers might be drawn into DW development). Similar, the OTW uses github for the AO3, so skills gained on DW would be transferrable to that project and vice versa, which can only be a good thing for both projects.
baggyeyes: Bugs Bunny and the Bull (barcode)

[personal profile] baggyeyes 2012-04-30 04:21 pm (UTC)(link)
Excellent points. I've been trying to learn PHP and Drupal - the Drupal community just adopted Git after years of using CVS. They aren't on Github, but a lot of their developers swear by it.