In standard php or source code based projects we easily keep all of the code in SVN and each developer can checkout their own copy and collaborate on the same code.
I wrote an article on painless Drupal revision control with CVS and Subversion best practices a while ago.
Unfortunately there is still the issue of source controlling the database, as you've pointed out. There are a few suggested methods, which I mention in an additional post.