Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is it useful to learn CVS before learning SVN? Does much of that knowledge carry over to SVN or are they too different?

share|improve this question
Does CVS have an easier learning curve? I'm looking to save time at the moment. – Ein Doofus Sep 17 '11 at 0:21
No, if anything SVN is easier and better supported. To accelerate your learning you can look into tools like Tortoise SVN ( or other clients. Also tools like Visual SVN make setting up a server a breeze: ( – Turnkey Sep 17 '11 at 0:43
up vote 14 down vote accepted

Both CVS and SVN are centralized version control systems. Having existing knowledge of workflows and using one will help you use the other, but learning CVS first simply to use SVN wouldn't add any value. If you are interested in a centralized version control system or your team is using SVN, just jump right into SVN. Documentation and tutorials abound on the Internet.

share|improve this answer
The objective of the SVN project was "CVS done right." But if you have no need to use CVS, then just jump right into SVN. You really won't miss anything important. – Jeff Grigg Sep 17 '11 at 3:53

No. Learning CVS is not useful and it will rot your brain and teach you bad habits. Recall that CVS is basically a wrapper for RCS which is about as poor as SCCS. SVN replaces all the functionality of CVS and removes the limitations.

It's kind of like asking if you should learn Visual Basic before learning Javascript. Yuck, why would anyone bother.

The better bet is to learn SVN and also learn one other system which is decentralized such as mercurial or git.

share|improve this answer
CVS is definitely an old system that has been superseded by SVN (among others), but I don't think if I'd go so far as to say it will "rot your brain and teach you bad habits". Using any version control is better than using none, and the concepts of checking in, checking out, merging, branching, and so forth still exist in CVS, but are much less sophisticated or much more limited. – Thomas Owens Sep 17 '11 at 1:13
SVN does absolutely horrible things to the concept of tagging, whereas CVS lacks the concept of a changeset. Both are way better than some systems though (VSS anyone?) and worse than others; once you find a DVCS you like, you won't look back. – Donal Fellows Sep 17 '11 at 1:32
Though SVN went forward in a couple of areas over CVS it got other concepts horribly wrong )or mangled them (Tags/Branches). But in the end they have both been superseded (IMO) by git. – Loki Astari Sep 17 '11 at 5:11
There is nothing wrong with VisualBasic – Todd Moses Sep 17 '11 at 6:42
"There is nothing wrong with VisualBasic" I hope this was written for comedic effect. – Jonathan Cline IEEE Sep 20 '11 at 1:24

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.