[rspec-devel] Dev Process (was Am I missing something with Heckle?)

Jay Levitt lists-rspec at shopwatch.org
Mon Nov 12 09:59:44 EST 2007

On 10/31/2007 11:07 AM, David Chelimsky wrote:
> On Oct 31, 2007 9:56 AM, Wincent Colaiuta <win at wincent.com> wrote:
>> If the suckiness of Subversion's merge functionality is a problem then
>> RSpec should consider moving to a different SCM, or at least layering
>> one on top of the existing Subversion repo (ie. "the" Subversion repo
>> continues to be the centralized distribution point, but the devs do
>> the "real work" using Git).
> We've been thinking of mercurial actually.

A little late for a response, but:

As cool as mercurial may be, you might want to see how you like SVN 
1.5's merge features.  It's only a starting point, and some things were 
already possible with svnmerge.py, but now it's in core, and it's much 
more solid and extensible.  Cherry-picking is supported out of the gate, 
and there's already a pretty cool graphical merge client from CollabNet.

I've got nothing against mercurial; I don't know much about it, other 
than that Adium just switched to it and I keep seeing posts on their 
blog about "hg is great, no more subversion limitations, now all I had 
to do is set up a cgi server on my Mac so other people can get my 
changes and then push fewer than 100 revisions at a time to avoid the 
broken-pipe bug and then I switched to ssh and ran out of disk space and 
OBTW, this won't really work well for testers who aren't contributors 
because downloading the full history takes an hour".  OK, maybe I have a 
little against Mercurial.

But mostly I'm noticing in the past few months that people are 
all-of-a-sudden switching away from Subversion, just when it's finally 
getting past its "first make everything in cvs work properly" stage.  As 
someone who uses an IDE, I find dealing with multiple SCMs is a real 
pain, and one of the cool things about Ruby has been that 
(traditionally) nearly everything's in Subversion.

If you just want easier merges, 1.5 may solve things.  If you really 
want distributed SCM, something simple like svk-over-svn may do it, but 
I honestly think that's overkill for a relatively compact project like 
RSpec with a small core team.  We just need branches and better merging.

See: http://merge-tracking.open.collab.net/

More information about the rspec-devel mailing list