Pretty much every versioning tool has a “Check Out/Check In” policy for editing files. Since commercial tools (perforce/plastic) are free for small teams, and SVN is free for all, I would give them a try.
Last time I have just shared files on a server I wrote a quick script to create a “.lock” file beside the .blend file when said file was in use, but as a measure it was easy to bypass.
I have good experience with SVN.
It saves a lot of time but it also costs some time because you do have to maintain it. Someone allways manages to break it and then you need at least one person who knows his stuff to untangle the mess.
I find that one of the worst ways is to physically mail a floppy disk. The storage is limited, the disks have low lifespan, and the postage is expensive. But if the team lives in the same neighborhood you could deliver it yourself.
Version control is another option but resolving merge conflicts with blender is kinda tricky since the save files aren’t plain text. I’d suggest giving people ownership of specific files and having them coordinate changes to shared files. If you wanna be extra certain, I suppose you could assign permissions.
I recently read that SVN can use the lock-modify-unlock principle instead of its standard copy-modify-merge principle.
I have never tried it but I think for projects that involve a lot of graphics files (blend, jpg, openexr. mov and so on) the lock-modify-unlock route would be better.
Merging is not possible anyways and you circumvent the mess caused by merge conflicts.