Subversion via SSH op Windows
Dus… Je zit achter een Windows-machine, het project waaraan je werkt wordt beheerd met Subversion, en alles wat de SVN-admin tegen je zei was
De URL is svn+ssh://svn.example.com en de gebruikersnaam user01. Stuur me wel eerst even je pubkey.En daar zit je dan. Geen flauw idee wat dat allemaal betekent. En nu?
Lees gauw verder, dan hoeft je SVN-admin nooit te merken wat voor groentje je bent… ;)
- De uitgangspunten
- Downloads
- PuTTY installatie
- TortoiseSVN installatie
- Genereren van een SSH sleutel
- Pageant
- TortoiseSVN
- Waarschuwing
De uitgangspunten
Voor deze HOWTO ga ik uit van het volgende:
- SVN is op de server (de repository) correct geïnstalleerd en geconfigureerd
- de URL van de repository is
svn+ssh://svn.example.com - je gebruikersnaam is
user01 - je accepteert dat ik geen enkele verantwoordelijkheid accepteer voor alles wat je doet of nalaat naar aanleiding van deze handleiding
Downloads
Allereerst gaan we het een en ander downloaden:
- PuTTY downloads
- Installer
- PuTTY
- Plink
- Pageant
- PuTTYgen
- TortoiseSVN downloads
- TortoiseSVN installer
PuTTY installatie
Als je de installer hebt gedownload, dubbelklik daar dan op en de applicaties worden automatisch geïnstalleerd, compleet met icoontjes in je startmenu.
Als je de losse applicaties hebt gedownload, zorg dan dat ze op een plek komen die je zelf logisch vindt.
TortoiseSVN installatie
De installatie van TortoiseSVN start je door op de TortoiseSVN-*.msi te dubbelklikken.
Na de installatie van TortoiseSVN moet je de pc opnieuw opstarten, want zo werkt dat nou eenmaal onder Windows.
Zorg dus dat je een bookmark naar deze pagina gemaakt hebt.
Als de pc opnieuw is opgestart en je start Windows Verkenner, zul je zien dat je rechtermuismenu 2 nieuwe opties heeft gekregen: SVN Checkout en TortoiseSVN (een submenu). Hierover straks meer.
Genereren van een SSH sleutelpaar
Voorlopig gaan we eerst een SSH-sleutel genereren. Hiervoor start je PuTTYgen.
Het PuTTYgen venster bestaat uit 3 velden: Key, Actions en Parameters. Grappig genoeg is de workflow precies andersom:
Parameters:
BijType of keyselecteer jeSSH-2 RSA; dit betekent dat je een sleutel van het type RSA wilt voor SSH versie 2. Als je een ander type sleutel nodig zou hebben, zou je SVN-admin dit vermeld hebben.
BijNumber of bitsvul je in hoe groot de sleutel moet worden; hoe groter de sleutel, hoe beter de versleuteling van gegevens, maar ook hoe groter de vertraging die de versleuteling oplevert. Mijn keuze hier zou4096zijn, maar ik ben een security-freak;2048moet voldoende zijn.Actions:
Als de parameters zijn ingevuld, druk je op de knopGenerate.Key:
Na enige tijd, en de nodige muisbewegingen om random data te genereren, verschijnt in het veld je public key, plus een paar invoervelden.
BijKey commentvul je je e-mailadres in; dit stelt de SVN-admin in staat de sleutel te herkennen.
BijKey passphraseenConfirm passphrasevul je een wachtwoord voor de sleutel in.
(Ja, dat doe je wel. Ik accepteer niet dat je een SSH sleutel opslaat zonder wachtwoord. Op die manier zet je de toegang tot de repository wijd open; denk bijvoorbeeld aan wat er zou kunnen gebeuren als je pc gestolen wordt, kwijtraakt, bij de vuilnis gezet wordt, enzovoort. Je hoeft dit wachtwoord maar 1 keer per sessie in te tikken, waarover straks meer.)
Kopieer vervolgens de inhoud van het veldPublic key for pasting into OpenSSH authorized_keys fileen sla dit op als tekstbestand (bijvoorbeelduser01_ssh_pubkey.txt).Actions:
Druk nu op de knoppenSave public keyenSave private keyom de gegenereerde sleutels op te slaan; maak hiervoor bijvoorbeeld een mapsshinMijn Documenten. De geheime sleutel (private key) krijgt als extensie.ppk, voor de publieke sleutel (public key) maakt de extensie niet uit.
Het bestand user01_ssh_pubkey.txt mail je nu naar je SVN-admin, en je kunt pas weer verder als je van hem/haar bericht hebt gekregen dat de sleutel geïnstalleerd is.
Je kunt PuTTYgen nu afsluiten.
Pageant
Start Pageant; dit geeft een nieuw icoontje in je systeembalk. Rechtsklik op dat icoontje en selecteer Add Key; selecteer vervolgens de private key die je zojuist gegenereerd hebt.
Pageant onthoudt nu het sleutel-wachtwoord voor je, zodat je dit niet steeds weer in hoeft te tikken.
Zorg dat Pageant start bij het starten van Windows; dit kan bijvoorbeeld door een snelkoppeling te maken in startmenu -> Programs -> Startup (startmenu -> Programma's -> Opstarten).
Zie de Pageant documentatie als je wilt weten hoe je Pageant zover krijgt dat het bij het opstarten ook automatisch de sleutels laadt.
TortoiseSVN
Open Windows Verkenner, ga naar Mijn Documenten, maak daar een nieuwe map met de naam Development, open die nieuwe map, rechtsklik en selecteer SVN Checkout. In het venstertje dat opent vul je vervolgens in:
- URL of repository:
svn+ssh://user01@svn.example.com/
Let op: je plaats dus je gebruikersnaam, gevolgd door een apestaartje, tussen de dubbele slash en de rest van de URL. - Checkout directory: de naam van de map waar de bestanden opgeslagen moeten worden
- Checkout depth:
Fully recursive - Revision:
HEAD revision
OK; de bestanden uit de repository worden vervolgens gedownload naar je pc.
Je kunt de bestanden nu gewoon bewerken zoals je gewend bent. Je kunt aan icoontjes van de directories zien waar je bestanden bewerkt hebt; deze wijzigingen kun je dan naar de server sturen door te rechtsklikken en SVN Commit te kiezen (dit kan ook met hele directories tegelijk, waarbij alleen de gewijzigde bestanden verstuurd worden).
Je kunt je eigen versie bijwerken naar de versie in de repository door SVN Update te kiezen; doe dit regelmatig, zeker als je met meerdere mensen in dezelfde repository werkt.
En dat was het.
Subversion werkt nu, en je weet hoe je bestanden van en naar de repository krijgt.
De rest laat ik aan je Google-capaciteiten over.
Have fun,
Nerdstock.org
| Reacties zijn welkom: rob[at]nerdstock.org |
![]() http://creativecommons.org/licenses/by-nc-sa/3.0/nl/deed.nl |







