Tunnelling Subversion

Utilities like rsync and cvs accept an environment variable to contain a command which allows logging in to a remote system before executing the desired action. The result seemingly causes the action to be executed locally although it is actually tunnelled through the specified program. Formerly rsh was used which contains some serious design flaws therefore ssh was designed to replace it. Refer to notes RSync over SSH and CVS over SSH for details how to use ssh with these utilities.

NOTE: This note assumes that you own a SSH login on the machine that hosts the repository.

Subversion provides an even more flexible mechanism to access remote repositories:

The following URI refers to the remote repository which is accessible via the custom tunnel: svn+test://[USER@]HOST/REPOSITORY/PATH/

Feedback is always welcome! If you'd like to get in touch with me concerning the contents of this article, please use Twitter.