For the past few years I’ve felt that Subversion was a “good enough” SCM system, but I am beginning to wonder about that. In practice, SVN hits bumps quite often, especially when doing things like moving files or directories. This is always easy enough for an experienced user to correct (“svn cleanup” plus move the directories, delete the .svn hidden folders, move them back, etc.) but with my less-experienced clients I think these bumps are really clouding their valuation of SCM. In contrast, I used to have customers who felt SourceSafe was easy and used it, only to experience spectacular failures (corrupted stores).
Going forward, if I have a client who doesn’t have an SCM system, I’m going to say: Vault, Perforce, or VSTS . It’s too high a surface area (every developer) and too critical a function to be undermined by “it doesn’t work on my machine.”