Getting Started/Build/Windows/subversion

    From KDE TechBase
    Revision as of 12:01, 24 March 2008 by Marktaff (talk | contribs) (Flesh out first two steps)

    This article details how a developer can set up the Subversion command line client svn and PuTTY on MS Windows to enable write access to the KDE Subversion Repository, using your existing SSH credentials from *nix.

    Install PuTTY

    • Install PuTTY

    PuTTY is a free implementation of SSH for Win32. Download and install PuTTY. Using the Windows install file is the easiest method. As of this writing the current version is putty-0.60-installer.exe.

    • Put PuTTY in $PATH

    In order for MS Windows to be able to find PuTTY and its related executable files, you need to add their location to your PATH variable. By default, puTTY will install to C:\Program Files\PuTTY. To edit your PATH (for Windows >= Win2k), Start -> Control Panel -> System -> Advanced -> Environment Variables -> System Variables -> Path -> Edit. Add "C:\Program Files\PuTTY;" to the end of the PATH variable value.

    Enable Existing Key

    • Transfer existing ~\.ssh\id_dsa to Windows

    Copy the private ssh key that is associated with your KDE Subversion account to the MS Windows machine. In many cases this will be /home/kde-devel/.ssh/id_dsa. I put mine in C:\Documents and Settings\mark\My Documents.

    • Load into PuTTY Key Generator

    In order to use your OpenSSH private key, you must first convert it to a puTTY Private Key (*.ppk). To do this, Start -> All Programs -> puTTY -> puTTYgen -> Load. Browse to wherever you saved your private key (id_dsa) and load it.

    • Save Private Key

    Once the key is loaded, click on 'Save Private Key' to save a copy of the key in a version that PuTTY can use. I saved mine as id_dsa.ppk.

    Enable Pagent

    • Start Pagent
    • Add Pagent to Startup group
    • Add Key to Pagent

    Configure Subversion PuTTY Tunnel

    • Open C:\Documents and Settings\<username>\Application Data\Subversion\config
    • In [Tunnels] section, add line:

    putty = plink -ssh -C -i c:\path\to\id_dsa.ppk -agent <svnaccountname>@svn.kde.org

    Repository Access

    • The repository can now be accessed by using the svn+putty:// tunnel, e.g.

    C:\KDE4> svn co svn+putty://svn.kde.org/home/kde/trunk/kdesupport/emerge