Okay here is the situation, I bought a hosting server that gives me version control and ssh access. I'm working on a big project that needs team work so I need at least 10 person around the globe to work on the project,.
this is the structure of the project:
/home/site1
/home/site2
/home/site3
3 of those 10 person work on site1, other 3 on site2, and other 4 work on site3. And the first 3 person who work on site1 should NOT be able to access to site2 and site3 and so on.
I have only one username on my server which is the one my hosting gave me which i have to give it to my team workers.
Any suggestions?
Indeed details would be useful. SVN can be easily partitioned into seperate repositories, each with their own set of users and permissions. Apache + mod_svn (with SSL of course enabled) is an easy to configure / use system but if ssh is actually needed details of use are as well.
If you use git, gitolite can work from a single account and preserve your existing authorized_keys entries. Still, be careful you don't lock yourself out.
Indefero is effectively a GoogleCode clone. If you do not need SVN per se it is a nice option for your situation, giving you a complete (private) system to work with. And in my experience git is easier to setup than SVN.
You don't trust them for access to your SVN repository, but you do trust the code that they will write? I believe you're trying to protect the wrong aspect of your project.
In any case, SVN works over dav, and you can put username authentication on it through apache and they wouldn't even require a shell account to the machine. You can also use PAM to do your auth in which case you could just restrict their access with /bin/false and just let SVN do the authentication.