Tried VSS once, never again.
If you use SVN, get Trac. They work really nicely together to handle source control, quick documentation and bug tracking.
For personal use, I've been using git through a github account. Git is very powerful and very fast, but it is hard to learn. For most stuff, though, you can use gitk or gitx, which are very nice GUIs for it.
Incidentally, how do you keep your database in sync with your code? On one project, the database was basically embedded so it made sense to build it from scratch as part of the make process. On another, the data was independent of the project (and weighed in at a few terabytes, not that much but more than source control is designed to work with), but certain derived views were generated by the source code.