Wrapper scriptUsing the svn protocol discloses the absolute path of subversion project repository. This is not good due to security reasons. Find where is svnserve:
deby:~# whereis svnserve svnserve: /usr/bin/svnserveWe are going to hide the root of the repository tree by using a wrapper script.
mv /usr/bin/svnserve /usr/bin/svnserve.bin touch /usr/bin/svnserve chmod +x /usr/bin/svnserveAdd the following to /usr/bin/svnserve (assuming /var/svn/repos is the root of the repository tree):
#!/bin/sh exec /usr/bin/svnserve.bin -r /var/svn/repos "$@"
svnserve as daemonIt is easy to run svnserve as a standalone “daemon” process. Use the -d option for this:
svnserve -dHere is how you can checkout files now:
master@deby:~$ svn co svn://localhost/project1 A project1/trunk ... Checked out revision 4.Stop svnserve:
deby:~# ps -A | grep svnserve 2144 ? 00:00:00 svnserve.bin deby:~# kill 2144
svnserve via sshYou need configure password-less ssh login (see this). Here is how you can access the svn repository now (note, you do not have to start svnserve daemon, ssh does that for you):
svn co svn+ssh://localhost/project1Read more about subversion here.