You can have a single repository or multiple - it doesn't really matter from a technical point of view as you can check out part of the repository or all of it depending on your needs.
However, if you work with other people on different sites you probably want one repo per site. One repo per site also works if you want to give each client a disk quota. I create a user folder for each user, and store the repo, staging site, and live site files in the user folder like this:
/home/user
/home/user/svn_repo
/home/user/www/live-site
/home/user/www/staging-site
Check out from repo into local working folder and commit back to repo from there.
Check out/update from the repo into staging-site to show client the changes you have made and test. Once it is all working and agreed, check out/update into live-site. This gets a bit messy if multiple people try to do updates. Best if one person takes this role.
Read Red-Bean book as cited by onik. If you are doing any editing on Windows systems Tortoise-SVN will be invaluable. With Tortoise-SVN you can also connect via ssh+svn: pseudo-protocol. Works very well if you are using signature based ssh logins on your server.