On 2011.1.28 12:13 AM, Peter Corlett wrote:
> Of course, when the only tool you have is CVS, any other version control
> system lookslike a good idea. I suspect CVS was the result of a drunken bet
> that it wasn't possible to make RCS worse.

I give a lightning a talk called "Subversion Lifetime Achievement Award", the
premise of which is that if Subversion hadn't fixed the superficial flaws in
CVS we never would have seen the fundamental flaws in the model.  Distributed
version control would not have taken off like it had if we were still
struggling to make a branch.  I propose it benefited from all the folks who
happily and easily used "svn cp" and then found no sane way to merge back.

What I discovered during my history was this timeline of Open Source version
control tools:

1972    SCCS    The first version control system

1982    RCS     The first vaguely sensible version control system

1986    CVS     Now people can work on multiple files AT THE SAME TIME

1990            CVS adds branching
1995            CVS adds anonymous network access.  Open Source development as
                we know it is now possible

2001    SVN     A "better" CVS

At this point, CVS has been the only real choice for an Open Source version
control system for 15 years.  Its basic model is one from 1982.  TWO
generations of programmers grew up all thinking about version control in
exactly the same way.

Before distributed version control, we did not think or talk about version
control.  We talked and thought and argued about CVS.  We did not know any
other way to think about version control.  Everything was geared towards this
one style of version control.  All our tools.  All our processes.  Of course
DVCS isn't going to fit in.  Everything has to change.

Of course you don't need branching, merging is hard so you've never branched.
 Of course you don't revert, reversions are hard so you don't revert.  Of
course you don't make tiny commits, every commit is inflicted on the whole
project, so you make enormous commits when it's totally ready.  This is all
twisting your brain to fit you version control system

CVS has fucked your brain.  Here is the best deprogramming I know.
http://hginit.com/00.html

After SVN revealed the problem, the DVCSes march forward.

2001    Arch    The first mildly popular distributed version control system.
                Unfortunately, it's bat shit insane.
2002    Darcs
2003    Monotone
2003    SVK
2005    hg
2005    git
2007    bzr

Nobody is making a CVS-style version control system any more because the model
sucks, it constrains how you run your project, and we finally realize that.
Even the original Subversion developers have bailed on it.


-- 
91. I am not authorized to initiate Jihad.
    -- The 213 Things Skippy Is No Longer Allowed To Do In The U.S. Army
           http://skippyslist.com/list/

Reply via email to