On Monday 06 November 2006 10:15, Sylvain Joyeux wrote:
> Projects like KDE proved that having a centralized versioning system
> like subversion is *not* that harmful for large projects. Distributed
> VCS is a must for projects where there is a lot of branches, like
> kernel development where nearly all major developer has its own
> branch. I'm not sure it is *that* useful for Ruby.

Here's +1 for Subversion for Ruby.

1) Sylvain is right about the development model of Ruby being more 
in-line with having a central repository.

2) Svn has almost no learning curve for CVS users, which is where Ruby 
is coming from.

3) Svn supports sub-projects, which is *very* nice for standard library 
projects.  For example, the REXML library in Ruby could become a 
pointer to the canonical REXML repository; pulling Ruby would pull 
REXML in the right place.  Or vice versa.  The point is, the 
intersection between the REXML repo and the Ruby repo is 
rexml/src/rexml == ruby/libs/rexml, and Subversion allows linking 
these.  Most decentralized VCSes that I'm aware of do not allow this 
sort of organization.

What we lose is patch-oriented development.  That's pretty much it.  
Darcs has the best patch theory I've seen, and the block-level commits 
is indispensable once you get used to having it.  But I've been 
underwhelmed with git (who's main claim to fame is that Linus invented 
it), and I don't see a lot of advantage for radically changing the Ruby 
development model.

--- SER