Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why choose Subversion over its competitors?

I personally used Mercurial and Subversion in a limited way and I just can't see why 95% of the people will chose SVN over something else. Is it just a monopoly case or is there a lot of good hidden in SVN that other systems don't have?

like image 333
Loki Avatar asked Dec 01 '08 14:12

Loki


Video Answer


4 Answers

It is free, is open source, has good documentation, is widely used, simple/easy to use, has a significant functionality set, available on lots of platforms, support available.

There is not much more that you can ask of a piece of software.

EDIT I know it is not as good as other tools at dealing with branching and merging - but many people either get by with it or work with the tool to avoid the merging.

One of the other reasons is that the conceptual model matches that of CVS and SourceSafe - so people do not have to grasp a different way of thinking about source control and changes. (Like Hg and Git so)

I am certainly not claiming that SVN is better than those - just giving an answer to why it is popular.

like image 171
Tim Avatar answered Sep 22 '22 16:09

Tim


  • Most developers aren't used to distributed source control yet. There's less of a conceptual move from one "traditional" SCM to SVN. In particular it's a natural migration path from CVS.
  • Subversion has been out for longer. Don't underestimate how long it takes to get traction.
  • Not only does SVN have more momentum due to how long it's been out - it also has a track record. It's been stable for a long time, and has been trusted by many projects without letting them down. If you're a manager, that's the kind of thing you want to hear.
  • Subversion is well integrated with many IDEs. Perhaps that's the case with Mercurial as well, but it certainly isn't with git.

Personally I'm just starting to get to grips with git having been a Subversion fan for a long time. I'm still more comfortable with Subversion, but it would be foolish to deny the advantages of distributed source control...

like image 35
Jon Skeet Avatar answered Sep 20 '22 16:09

Jon Skeet


It's all about support.

  • support by documentation
  • support by IDE's
  • support by hosting companies
  • support at enterprise level

Support, support, support.

like image 44
gizmo Avatar answered Sep 20 '22 16:09

gizmo


CVS used to be the default (it was pretty much the only answer). SVN was designed explicitly to be a better CVS. It makes sense that many of the CVS users would migrate to SVN because it fixes nearly all of CVS's faults, is easier to use and maintain, adds new features, and has a really easy migration path.

SVN also has its share of problems, but generally only advanced users will run into them. Systems such as Git and Mercurial seem to address those problems (I've only dabbled in git slightly, never mercurial). SVN is good enough for most purposes and has the userbase, community, and tool support to make it a very attractive choice for people just getting started.

like image 30
rmeador Avatar answered Sep 19 '22 16:09

rmeador