I am sure most developers (whether Java, Ruby, Python, or other) have
used Subversion, Perforce or CVS to manage and control their projects'
source, but have you used
I'm sure most of you would have heard of
git it hosts the Linux
kernel code currently. Less of you have probably heard of
before. Prior to this evening, the most notable point of
me, is that it is written in Haskell. Both
examples of distributed version control systems (DVCS) of which there
has been an explosion of products (both commercial and open source)
Tonight I had the fortune of experiencing
darcs for the first
time. Previously I had used
darcs get URL to download code before,
but had not utilized any other feature before. Tonight I submitted a
patch to a Ruby open source project (RForum) and found the experience
very pleasurable as a developer.
I have read that
darcs is a user friendly version of
some powerful options.
Perhaps there are
darcs gurus reading that can shed more
light on these two less mainstream SCM systems? If so, I would love
to hear your thoughts on them especially if you can compare and
contrast with any non-trivial Subversion, Perforce or CVS experiences.
Background: I currently use Subversion, however, I usually work in
smaller teams, so concurrent work is not that much of an issue at
present, but things will be changing. The largest team I worked in on
a Subversion project was 6 active developers (9 for the one Perforce
project). Previously I worked on a project with over 80 developers,
but that was using
ClearCase and there were many problems with that
project that I can't determine what was caused by
ClearCase or the
rest of the project's many issues.