On 2011-08-07, Richard Quadling <rquadl...@gmail.com> wrote:
> I feel I have a major objection to using a DVCS for PHP.
>
> Currently, a single source provides a sense of authority. If bad code
> is committed, it will be quickly dealt with. If good code is
> incomplete it may be withdrawn or fixed. In most cases the features
> that exist in a branch are well thought out and many clever brains
> have seen it and interacted with it to make it what it is.
>
> So, when someone like me comes along, someone capable of building the
> code and playing with it at a very minor level, I can be sure that if
> things don't work, it is probably me that's broke it and that I can
> rely on the branch to contain good working code. OK. I know ITRW,
> things do get left unfinished or plain broken. But it isn't as if the
> code belongs to a single person who may have not spent all their time
> with it.
>
> Whilst I am happy to use my own builds on my dev setups, I'm also
> happy to rely on the official releases from The PHP Group.
>
>
> Now let's envisage a DVCS.
>
> There will be (not might be, but will be), multiple, and potentially
> conflicting/incompatible, versions available. Which do I choose? If
> everyone is capable of forking PHP, which is the official one? In the
> event of a single official repo, then why bother with a DVCS? (I'll
> admit I'm naive on the true requirement of DVCS, as I think SVN works
> very well).
The objection is valid, but it's just a minor concern. A main repository
in a DVCS is not defined by being the only existant repository, but
rather by common sense and knowledge where to find the main one.

For PHP this is easy: there will be (git|hg).php.net where you will
find the main repository. There is the github.com/php and bitbucket.org/php
user that we own. They will be used to host the main repository.

I think it's very easy to figure out what the main repository is and what not
(particularly as github and bitbucket have fork views where you see
relations and where they've forked from).

So using conventions and common sense tend to work rather well.
An example: it is known that the main linux tree is Linus one, and not
mine, so if you search for the main linux tree you will clone
Linus tree and not mine.

> The main thing I'm worried about is if feature X splits the core devs
> so much that there are 2 competing repos, both with a significant
> number of core devs supporting each repo, how do I choose which is
> which? If my abilities include being able to code at the core level,
> which should I support? Both? All 3, 4 or 10 different forks?
>
> Having a single repository for the code makes the code the official,
> authoritative version. A DVCS will have too many champions and I feel
> would drastically dilute that authority.

I think no Open Source project has yet suffered from what you've described. 

-David

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to