Repository-based site deployment -- what to do about sites/default/files?
Ahh the age old question of how to properly deploy Drupal from dev->test->live. If you search around you will find many opinions and answers. There is no one answer and no singular method. The symlink solution is good one and is safe and simple. Another solution would be to use SVN to sync directly back to the same site/directory(s). You could mark certain files so that they are not pushed. If a mistake is made, you just revert. One other file I can think of that you may not want to overwrite is .htaccess. Other than that, settings.php and your files directory are about all that would need to be excluded.