Reasons for/against using svn for deployment?

deployment, svn

Solution

I can think of a couple of issues:

- checkout on the server will create unecessary .svn directories there

- to checkout on the server, the user needs both SVN and server access rights

These are off the top of my head - I'm sure there are more.

Problem

So, At my job we use svn to manage our source code, but when deploying, we do an svn export and rsync that tree with the code that is on production. This is the way it has been done since I started (it is my first programming job) and how we continue to do things. I've started to work on my own personal projects outside of work and still use svn to to manage my code - however, instead of syncing an export with the tree on the server, I simply do a checkout on the server and when I roll new code I just svn up. This seems simpler to me. Are there good reasons not to use svn on a production machine? A security risk that I'm overlooking?

Original source