(This post is directed as much for developers out there, and companies with their own process than it is at d.o) I've recently been through a similar process with the company I'm with now, and come to the same conclusion regarding SVN. While I prefer to do my own personal projects in other systems, SVN is the lowest common denominator of VCS that I could find. I am the first full time developer at my company, and the other employees must have a GUI or they can't use VCS. We are currently stuck in a mix of another DVCS that is not working well, as there is not enough documentation, and neither I nor the consultant who previously set this up for them are experienced in it, rather the consultant wanted to be cutting edge and move to a distributed system. The other major complaint I have at this point, is that moving to a specific DVCS has actually limited workflow options. Previous companies/clients which used SVN actually had more options since almost every major DVCS (hg/git/bzr) has an SVN plugin to allow directly working with a SVN repository. This allows each developer to use the methodologies/workflow that best suits them, for their development. -Mike On Jul 31, 2008, at 3:44 AM, Karoly Negyesi wrote:
If we move, we move to SVN. My team, consisting of mostly pretty good coders tried a few distributed RCSes and given this experience I am now vehemently against any DRCS. The concepts are way too heavy and the utilities are not ready. Most of these systems are not that mature thus any docs from 1-2 years ago are worthless thus documentation is not much. When I was for a DRCS in 2005/2006 I was a naive greenhorn sorry for the ruckus I caused then, I now know better.
And back to Drupal contrib, at least with a central repo you can have some central control trying to keep order but with a DRCS all bets are off. Check contrib CVS root for all the crap our CVS challenged contributors add there and think what would ensue with a DRCS.
It's highly debatable that the most serious of our problems, namely understanding RCS would be solved by any DRCS. You sure want to explain multiple heads for one or patch algebra for another? How does 140+ commands sound (and then some has one or two superb powerful switches...) This is a terrible mess.
Now, with SVN we wll need a script to stop tagged things from being changed because they are not immutable as they were in CVS -- but this is readily available and this is the only problem I am aware of. SVN concepts are mapping much better to reality -- one dir per branch/tag. Makes it (much) easier to understand. You already keep a separate directory for your branches so that's how the repository looks like, easy! Thus it _will_ solve some problems -- another problem with DRCS that it does nto solve the problems we have :) SVN tools are available. SVN is mature and documentation is plentiful. svn 1.5 added merge tracking for (much) better team work.
Feature foo and bar might be unavailable for SVN but I can not care , we need something that we, we all of the Drupal community can use.
Once the reboot of my life is complete (read: September) I will rejoin the moving effort and help.
__________________ Michael Prasuhn mike@mikeyp.net http://mikeyp.net 503.488.5433 714.356.0168 cell 949.200.7670 fax