I'm using Git for code and SVN for art at the moment, which is a bit painful... The last company I worked for did the same. The one before that used Perforce.
I haven't tried them yet, but git-annex, git-bigfiles, git-media make it possible to manage your massive art files with git too.
There are commercial tools (perforce), but does a small team (1-2 devs) really need such a tool ?
Perforce is free for small teams (<20), only large teams have to pay for it
What's special about perforce besides basic versioning and bindiffs? I'm not familiar with the product, but I can't imagine anything else really being needed, and those two things alone are pretty easy.
It's pretty complex. I've only worked with it as a grunt, never the team leader or in charge of the project infrastructure, so I've only been a simple user... but the interface for it was huge. We had a single engine repo that was "linked" (like a shortcut/hard-link) into dozens of different game repos, and managing all of those branches and remerging the divergent versions of the engine seemed to be very simple.
It's also both centralized (like SVN) or distributed (like Git) or set up as a hybrid of both, and there's a tool to let it integrate with git so that your coders can use git but the server is actually a perforce database.