Ranked in these QuestionsQuestion Ranking
Pro Clear and simple operation
It has linear history, central repository and management. Lacks too complex features, almost every developer is familiar with it, so everyone knows what to expect and how to work with it.
Pro Binary files handled efficiently
Pro File locking
Pro Incremental revision numbers
Gives you a better indication on how old a specific revision is without needing any more details.
Pro Easy to understand externals
E.g. more easy to understand than Git's submodules.
Pro Free-form versioned metadata
Con Branches are hell. Conflicts are hell
Svn is hard to use on multi-topics workflows. Branches exist but are often not used because of the fear of the merge hell.
Also, conflicts are a big deal and happen on the server; it feels like you only have one try and no way to abort/retry your conflict.
Con Underlying model is totally flawed
Need to code in a rural area? Away on a retreat away from a good network connection? On a plane?
Con Does not forgive errors
Forgot to commit a file, you need to add a new commit.
Con Flawed roll-back
It is nearly impossible to revert a big repository to an older version.
In GIT, on the other hand, this works very well.