This tutorial is designed for use in conjunction with the server setup tutorial I’ve written here: Creating An SSH-Enabled Subversion Server On Linux.
For this tutorial, we will assume you are connecting using TortiseSVN on a windows machine.
1. Generate SSH Keys using PuTTYgen
You may skip this step if you have an existing RSA Key Pair you wish to use, but keep in mind that TortoiseSVN requires the private key to be in
.ppk (putty private key) format. You can covert an openSSH key pair using PuttyGen.
- Install PuTTYgen on your local machine.
2. Open PuTTYgen and ensure the settings are as follows:
- Number of bits >= 2048
- Key type = RSA
3. Move the mouse around a bit, as it says on the screen:
4. You will be greeted with a screen like so:
Enter a Key Comment and optionally, a passphrase. If you enter a passphrase, it will ask you for it every time you connect to SVN.
5. Hit “Save public key” and save the key to a known location. I will save mine to
C:\Users\<USER>\.ssh\SvnKey.pub as it is my public key, and should go in the folder with my other ssh keys.
6. Hit “Save private key” to save the private key. I will save mine to
7. Contact the SVN Administrator and give them a copy of your Public Key (ie, the
.pub file, not the
.ppk file). Once you've done so, wait for them to give you the green light. They will provide you with an endpoint that will look like the following:
svn+ssh://<USER>@<HOSTNAME>/<(Optional) PathToRepo>/<RepoName>. They may also give you a port number which we will set up below.
2. Connecting to the Repo using TortoiseSVN
We will set up the SVN Connection using TortoiseSVN with a custom port and the
.ppk file we generated earlier.
- Download and Install TortoiseSVN.
- Create a folder where the project will be stored. Mine will be at
- Right-Click to open the context menu, and go
TortoiseSVN -> Settings:
4. Go to Network Settings:
5. We need to set the SSH Client up for SVN. We will use TortoisePLink as the client, and set the port and identification keys.
In the box, type the following:
C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe -p 22 -i 'C:\Users\<USER>\.ssh\SvnKey.ppk'
C:\Program Files\TortoiseSVN\bin\TortoisePlink.exeis the path to the PLink Executable (Should have been installed with TortoiseSVN.)
-p 22is specifying the SSH port number (provided by the SVN Admin). 22 is the default port number, so if the admin doesn't give you a port, you can leave this part out.
-i 'C:\Users\<USER>\.ssh\SvnKey.ppk'sets the path to the private key we generated above. Obviously your use won't be
<USER>, so make sure to set this to your windows username.
OK to save your settings.
3. Checkout the Repository
- Right click again and select “SVN Checkout”
2. Enter the URL the admin provided you and hit “OK”. The clone should begin.
Hit “OK” once complete.
Congrats! The project is now cloned, and you are set up to contribute.