When comparing Subversion vs Perforce, the Slant community recommends Subversion for most people. In the question“What are the best version control systems?” Subversion is ranked 8th while Perforce is ranked 9th. The most important reason people chose Subversion is:
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.
Ranked in these QuestionsQuestion Ranking
Pros
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
Pro Multi platform availability
Pro Central repository/server
There's a central repository and a clear path/protocol how to reach it.
Pro HelixCore
Helix Core for GIT large files is free for up to 5 users.
Pro Solid workflow for binary files
Perforce has shown itself as very capable when it comes to managing binary files. That's why it's still the go to version control system in game development.
Pro GUI and Visual Studio integration available
Cons
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?
Tough luck.
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.

Con Closed Source
Con Does not work offline
You must be connected to the internet to do anything useful. Although, there is a Git <-> Perforce bridge that sorta solves the problem.

Con Centralized
Branching becomes a pain due to its non-distributed model.
