# Het handboek van &kdesvn;

## Inleiding

&kdesvn; is een subversion-client door &kde;.

U zou enige kennis over subversion zelf moeten hebben, maar hopelijk zijn de meeste items zelfverklarend.

Bugrapporten en verzoeken voor nieuw onderdelen en mogelijkheden kunt u indienen via het KDE Bugtracking Systeem.

### Termen

Als u bekent bent met versiebeheersystemen dan kunt dat overslaan - of het toch lezen en de auteur verbeteren ;)

Repository

- Central opslag van data. Dat kan in een database of een plat bestandssysteem. Zonder speciale cliënt kunt u de data daarin niet lezen. Voor Subversion repositories is &kdesvn; een dergelijke cliënt.

Werkkopie

- Een platte kopie van een repository op een lokaal bestandssysteem. Dit gebruikt u in elk normaal bestandsbeheerder, bewerkt bestanden en zo voorts. RCS-informatie kunt u lezen met cliënten zoals &kdesvn;.

  Vergeet niet dat subversion niets weet over KIO, daarom moet een werkkopie op een plek zijn waar het bereikbaar is zonder een speciaal protocol, ⪚ fish:// of iets dergelijks is niet mogelijk.

WebDav

- WebDav is een protocol waarmee u bestanden op een webserver ver weg kunt bewerken. Subversion is een speciaal soort van WebDAV waarmee u toegang heeft tot repositories via een webserver. Bij normaal gebruik zijn deze read-only. Met speciale configuraties heeft u wellicht een WebDAV met schrijfrechten zodat u via een speciale browser toegang heeft. &kdesvn; is GEEN webdav-client, maar &konqueror; is via het webdav:// protocol dat wel. Maar met &kdesvn; kunt u door de revisie-boom van een repository (via http://) heen bladeren.

## &kdesvn; gebruiken

### Mogelijkheden van &kdesvn;

&kdesvn; begrijpt de volgende protocollen voor browsing repositories:

http

- Het standaard webbrowserprotocol.

https

- Het standaard versleutelde webbrowserprotocol.

(k)svn+http

- Het standaard webbrowserprotocol. Kan worden gebruikt om &konqueror; automatisch &kdesvn; aan te laten roepen.

(k)svn+https

- Het standaard versleutelde webbrowserprotocol. Kan worden gebruikt om &konqueror; automatisch &kdesvn; aan te laten roepen.

(k)svn+bestand

- Lokaal repositoryprotocol. Kan worden gebruikt om &konqueror; automatisch &kdesvn; aan te laten roepen.

(k)svn

- Het eigen serverprotocol van subversion.

(k)svn+ssh

- Subversion over ssh.

bestand

- Directe toegang tot een repository. &kdesvn; controleert of een opgegeven pad een repository of een werkkopie is en opent het dan in de juiste modus. Voor subversion is `file:///dir` en `/dir` niet hetzelfde!

Deze lijst is ook van toepassing voor het geven van &URL;s via de commandoregel.

### Beginnen met subversion en &kdesvn;

Deze sectie is grotendeels voor beginners die niet bekend zijn met subversion en legt uit hoe subversion en/of versiebeheersystemen (RCS) werken.

#### Een werkkopie aanmaken

Werkkopieën MOETEN via lokale paden toegankelijk zijn. Subversion weet niets over pseudo bestandsystemen zoals `smb://` of `fish://`. &kdesvn; vertaalt indien mogelijk sommige daarvan (zoals `system:/home`) maar dat is niet mogelijk over een netwerk.

Het eerste wat u moet doen is het creëren van een werkkopie van uw repository. Hiervoor selecteert u Subversion Algemeen Repository uitchecken . In het volgende dialoogvenster moet u de &URL; van de repository selecteren dat u wilt gebruiken, ⪚, zoiets als `http://localhost/repos/mijnproject`. Submappen van een repository zijn ook mogelijk, ⪚, `http://localhost/repos/mijnproject/trunk` of vergelijkbaar.

Selecteer en/of creëer een lokale map, waar de werkkopie moet verblijven.

Tenslotte, de uit te checken revisie. Meestal zal dat zijn HEAD. Dit zorgt ervoor dat de laatste opgeslagen versie de versie is waaraan gerefereerd wordt.

Na het klikken op de knop OK zal &kdesvn; uw werkkopie creëren en (als het vakje is aangevinkt) het openen.

Als u een respository heeft geopend om er doorheen te bladeren dan kunt u een map markeren en Subversion Repository Huidige repositorypad uitchecken selecteren en het dialoogvenster zoals boven beschreven invullen. Dan zal alleen de gemarkeerde map worden uitgechecked.

#### Lokale wijzigingen vastleggen (commit)

Markeer het items of de items die u wilt verzenden en selecteer &Ctrl;# Subversion Werkkopie Vastleggen (commit)

Als u probeert om vast te leggen terwijl geen item is geselecteerd, dan gebruikt &kdesvn; het bovenste element van een geopend werkkopie, &ie;, het werkkopie pad zelf.

Deze bewerking is altijd recursief, wat inhoud dat als u een map heeft geselecteerd &kdesvn; altijd alle gewijzigde items in de submappen daarin zal versturen. Als u heeft ingesteld dat u alle items wilt nakijken voordat u ze vastlegt dan krijgt u een lijst te zien met alle door &kdesvn; te vast te leggen items in het volgende dialoog. Daar kunt u items die u niet wilt vastleggen deselecteren. In dat geval zal &kdesvn; alle items apart versturen, &ie;, niet recursief. maar u kunt ook items selecteren die zonder versiebeheer zijn om ze toe te voegen en vast te leggen (als ze niet gemarkeerd zijn om over te slaan). hierdoor ziet u of er nieuwe items zijn die u vergeten bent.

Voer een logbericht in over wat u verstuurt en druk op de knop OK zodat de transfer start.

#### Werkkopie bijwerken

Dit brengt de lokale werkkopie in sync met de repository. U kunt &kdesvn; zo instellen dat &kdesvn; bij het openen van een werkkopie controleert op nieuwere/veranderde items in de repository. Dit gebeurt in de achtergrond zodat u gewoon met &kdesvn; kan blijven werken. Als dit is gebeurt, dan zijn items met een nieuwere versie of mappen met items die een nieuwere versie hebben gemarkeerd.

Om de wijzigingen op te halen, selecteert u Subversion Werkkopie Bijwerken naar HEAD . Dit werkt bij naar de laatste versie. Als u een specifieke revisie wilt hebben dan selecteert u Subversion Werkkopie Bijwerken naar revisie en selecteert u vervolgens in het volgende dialoogvenster de gewenste revisie.

Als u geen item heeft geselecteerd, dan zal het bijwerken over de hele geopende werkkopie worden uitgevoerd, anders zal alleen de geselecteerde items recursief worden bijgewerkt.

#### Toevoegen aan en verwijderen uit de werkkopie

Voor beide bewerkingen zijn twee stappen nodig: eerst toevoegen of verwijderen en daarna deze wijzigingen vastleggen in de repository. Voordat u vastlegt kunt u nog de toevoeging of verwijdering ongedaan maken.

##### Item toevoegen

Items toevoegen aan een werkkopie kan op drie manieren gebeuren:

Items zonder versiebeheer selecteren en deze toevoegen

- Kopieer met &konqueror; of enig ander hulpmiddel naar de werkkopie. Ga door de lijst, markeer ze en selecteer Insert Subversion Werkkopie Gemarkeerde bestanden/mappen toevoegen . Als u nieuwe mappen met alle subitems wilt toevoegen, selecteer dan &Ctrl;Insert Subversion Werkkopie Gemarkeerde bestanden/mappen recursief toevoegen .

Controleren en recursief toevoegen

- U kunt in de werkkopie controleren op onbeheerde items. Ga naar Subversion Werkkopie Controleren voor onbeheerde items . Een dialoog verschijnt met alle onbeheerde items in een overzicht. Door op OK te klikken, voegt u alle gemarkeerde items aan de werkkopie toe, ongewenste items moet u eerst deselecteren.

Sleep en Drop

- Markeer in &konqueror; of een andere vergelijkbare bestandsbeheerder de gewenste items die u wilt toevoegen en versleep ze naar &kdesvn;. Laat ze los op de mappen in de geopende werkkopie en &kdesvn; kopieert deze items daar naar toe en voegt ze toe.

##### Items met revisie uit de werkkopie verwijderen

Items verwijderen is altijd recursief. B.V.,wanneer een map verwijderd wordt, dan worden ook alle subitems verwijderd. Markeer de de gewenste items en kies Subversion Algemeen Gemarkeerde bestanden/mappen verwijderen van het algemene menu. De revisiecontrole wordt van de items verwijderd en daarna worden de items van de harde schijf verwijderd.

#### Logs tonen

Het tonen van de log kunt u starten met &Ctrl;L als u een of geen item in het overzicht heeft gemarkeerd. Afhankelijk van u instellingen (zie subversion-settings) &kdesvn; haalt de log informatie startend bij HEAD en toont het .

##### Het log display venster

Aan de linkerzijde is de lijst met log-items te zien die &kdesvn; ophaalde. Het logbericht is beperkt tot één regel. Wanneer een log-item wordt gekozen is het volledige logbericht rechtsboven te zien. Rechtsonder is een lijst met de veranderde bestanden. Dit venster verschijnt ALLEEN als &kdesvn; zo is ingesteld dat deze lijst wordt opgehaald.

Met de knoppen bovenaan kunt u een andere bereik (range) voor de logs kiezen.

Dit bereik wordt zonder vooringestelde grenzen verstuurd, wees dus vorzichtig bij grote repositories.

De knoppen onderaan het dialoogvenster werken altijd op het gekozen log-item, maar niet op geselecteerde items in de lijst met veranderingen. Dus wanneer u het commando Vorige diff kiest, maakt het een diff over alle veranderde items in deze revisie als ze een gelijke of lagere revisie hebben. Hetzelfde geldt voor Diff revisie's

Annotate werkt natuurlijk alleen als het item waarvan de log is een bestand is.

Bij alle items in beide lijsten kunt u een contextmenu openen voor extra mogelijkheden. In de linker lijst is dit Versie voor de linkerkant van diff (&ie; begin revisie) en Versie voor de rechterkant van diff (&ie; eind of doel van diff, in unified wordt dit gedeelte gemarkeerd met een `+++`). De hier gekozen revisie's worden gemarkeerd met een pijltje.

### Werken met repositories

Eenvoudig bladeren door de repository kunt u doen met &konqueror;, &dolphin; of vergelijkbare bestandsbeheerders: Open een URL met een protocol zoals beschreven in kdesvn-features (Alle varianten die starten met k) en zij zullen de inhoud tonen. Hierdoor kunt u eenvoudige opdrachten zoals kopiëren, verplaatsen en verwijderen uitvoeren. Wanneer u het volgende filter ?rev=`xxx` instelt, zijn alleen de gegevens van een specifiek revisie te zien. De syntax van een revisie-filter is beschreven in revision-syntax, lees meer over KIO::ksvn in kdesvn-kio

Alle opdrachten behalve Kopiëren kunt u alleen uitvoeren in de revisie HEAD

#### Terugplaatsen van verwijderde items

Het terugplaatsen van verwijderde items in subversion is het kopiëren van items uit een gekozen revisie. Wanneer U dus van plan bent om items terug te plaatsen, kijk naar de revisie voordat het item werd verwijderd. Ga naar Subversion Repository Selecteer revisie om te bladeren en kies de gewenste revisie. &kdesvn; toont nu inhoud hiervan. Markeer het de items die teruggezet moeten worden en ga naar &Ctrl;C Subversion Algemeen Kopiëren . In de volgende dialoog is het doel altijd de revisie HEAD, de bron is de revisie waarin men aan het bladeren was. Vul het pad in en klik OK en het kopiëren start. Ga na het succesvol kopiëren terug naar de HEAD revisie en het teruggeplaatste item zou te zien moeten zijn.

#### Mappen importeren

Vanwege beperkingen van subversion zelf, kunt u alleen mappen en geen losse bestanden importeren.

##### Slepen en loslaten

Markeer in een bestandsbeheerder de map die u wilt importeren en sleep het naar de map in &kdesvn; waar U het wilt importeren.

##### Markeer in de bestandsbeheerder een map die u wilt importeren

Markeer de map waar u een nieuwe map naartoe wilt importeren. En ga naar Subversion Algemeen Mappen importeren in huidige map en selecteer de gewenste map.

### Overige handelingen

#### Samenvoegen

Open repository of werkkopie, markeer het item dat u wilt samenvoegen (merge) en ga naar Subversion Algemeen Samenvoegen . Vul in de volgende dialoog de gewenste waarden. Wanneer de repository is geopend, worden bron1 en bron2 gevuld, wanneer de werkkopie is geopend, dan wordt het doel gevuld met het huidige geselecteerde item. Het afhandelen van deze parameter is afhankelijk of u de interne diff, subversion dan wel een extern samenvoeg-programma zoals &kdiff3; gebruikt. Het doel moet ALTIJD een lokaal bestand of map zijn. U mag wisselen tussen extern en intern samenvoegen (merge) via het keuzevakje Externe samenvoeging gebruiken.

##### Intern samenvoegen

Het doel is hetzelfde als bij subversions eigen commandoregel. Wanneer bron1 en bron2 aan elkaar gelijk zijn, moeten start- en eind-revisie verschillend zijn. Als de bronnen niet gelijk zijn, dan is start-revisie toegewezen aan bron1 en de eind-revisie aan bron2. Het doel MOET een werkkopie zijn, anders stuurt subversion een foutmelding.

De keuzevakjes hebben de volgende betekenissen:

Recursief

- Voer alle opdrachten op mappen recursief uit.

Ongerelateerde items behandelen als gerelateerde items

- Indien ingeschakeld, zullen items zonder relatie worden vergeleken (diff) alsof zij wel een relatie hebben. Anders zal subversion de ene zijde verwijderen en het aan de andere zijde toevoegen.

Forceer het verwijderen van veranderde items/ items buiten versie beheer

- Indien niet ingeschakeld en samenvoegen (merge) verlangt het verwijderen van een veranderde item of een item zonder rivisiecontrole, zal het samenvoegen (merge) mislukken. Anders zal het item worden verwijderd.

Uitvoeren als test zonder wijzigingen

- Indien ingeschakeld, verstuurt subversion alleen meldingen over wat het zou doen, maar verandert de werkkopie niet.

##### Externe samenvoeging gebruiken

Lees de sectie diffmerge-settings voor de details hoe een externe (merge) samenvoegprogramma ingesteld moet worden. &kdesvn; geeft via de commandoregel opdrachten. Alvorens het volgende wordt uitgevoerd:

1. Wijs een start-revisie toe als bron1 en een eind-revisie als bron2. Controleer dan of er verschillen zijn (pad en/of revisie). Als dat zo is, dan is het een drievoudig samenvoegen, anders is het een eenvoudig samenvoegen van bron naar doel. Als bron2 leeg gelaten is, is het ook een eenvoudig samenvoegen (merge).

2. Maak een export naar een tijdelijke map. Alleen de start-revisie van bron1 een simpel samenvoegen (merge) is, anders beide bronnen met hun revisies. Als het item geen map is maar een bestand, neem dan de inhoud van een aangewezen revisie.

3. Maakt de aanroep naar het gewenste externe (merge) samenvoeg-programma zoals ingesteld in de Instellingen. De foutmeldingen worden getoond in een log-venster zodat u kunt zien wat fout is gegaan (als iets fout is gegaan).

In afwijking met het interne (merge) samenvoeg-programma, mag het doel een gewone map/bestand (zonder revisie controle) zijn, omdat externe programma's dit niet belangrijk vinden.

Indien recursief niet is ingeschakeld, dan wordt de export uitgevoerd als een platte export. Wees voorzichtig: wanneer dit wordt gedaan met werkkopiën, worden externals NIET geëxporteerd.

#### Conflicten oplossen

kdesvn heeft zelf geen module om conflicten op te lossen maar u kunt vanuit &kdesvn; een extern programma gebruiken. In extern-resolve-setup is een beschrijving hoe u dit kan instellen.

Wanneer een item de status heeft van conflict ( er is dan een rood kruis te zien bij zulke items) dan kan het volgende gekozen worden Subversion Werkkopie Conflict oplossen . of vanuit het contextmenu conflict oplossen (alleen bij items met een conflict) &kdesvn; start nu het programma dat door u is geïnstalleerd (of het standaard programma). Na dit opgelost te hebben, kunt u dit item als opgelost markeren (Subversion Werkkopie Markeer als opgelost), anders kunt u de veranderingen niet vastleggen.

### Eigenschappen van &kdesvn; instellen

#### Bugtracker integratie

Het TortoiseSVN project ontwierp een mooi systeem om bugtracker te integreren in de subversion-GUI. Op dit moment ondersteund &kdesvn; geen extra velden in het vastlegvak (dit zal later volgen) en begrijpt alleen de volgende eigenschappen:

#### Bugtracker Integratie Eigenschappen

Eigenschap | Beschrijving | Voorbeeld
`bugtraq:url` | Dit is het &URL; naar de bugtracker. Het moet het woord `%BUGID%` bevatten. | https://bugs.kde.org/show_bug.cgi?id=%BUGID%
`bugtraq:logregex` | Bevat een of twee uitdrukkingen, gescheiden door een regeleinde. Indien alleen een enkele uitdrukking is ingesteld, dan moet de kale bug ID overeenkomen met een groepje van de regex-regel. Indien twee uitdrukkingen zijn ingesteld, dan wordt de eerste uitdrukking gebruikt om de regel met het bug ID te vinden maar die ook meer dan alleen de bug ID kan bevatten (⪚ Issue #123 of resolves issue 123). De tweede uitdrukking wordt vervolgens gebruikt om de kale bug ID te krijgen uit de regel verkregen met de eerste uitdrukking. Let op ongewenste spaties aan het eind van de uitdrukking en vergeet niet de haakjes om het nummer-omschrijving. | Enkele uitdrukking (bruikbaar met TRAC):
    #(\d+)
Niet alle nummers zoals `#190` zullen worden overgenomen en vertaald naar een &URL; in de log-uitvoer. Twee uitdrukkingen:
    [Ii]ssue #?(\d+)(,? ?#(\d+))*
    (\d+)
##### Onthouden let op de spaties na de `(\d+)`! Dit is een van de meest voorkomende fouten waarom deze expressie niet werkt!

Bij lokaal geopende repositories (&ie; `file://` protocol) en bij werkkopiën worden deze eigenschappen vanaf de geopende map omhoog gezocht totdat het gevonden is of het bovenste niveau van subversion is bereikt. In repositories die via een netwerk geopend zijn (alles behalve `file://` protocol) wordt alleen de geopende map doorzocht.

Ondersteuning voor meervoudige sets van deze eigenschappen volgen misschien later, (b.v. in een submap een andere waarde voor een ander item &etc;) maar meestal is het opzoeken van van een enkele item genoeg.

### De revisie boom

De revisie probeert de hele geschiedenis van een item te laten zien, zodat de gebruiker een beter idee heeft over de geschiedenis van een item. Er moet daarom de complete log van respository gescand worden omdat er informatie verzameld moet worden dat subversion niet geeft (en ik denk ook niet zal) geven. Omdat dit veel verkeer zal geven, wordt voor de revisie boom de interne log cache gebruikt.

#### Vereisten

De revisie boom wordt gegenereerd met dot. Dus moet voor een werkende revisie boom, het pakket graphviz zijn geïnstalleerd.

### Interne log cache

&kdesvn; kan een interne logcache gebruiken voor sommige operatie´s. Meestal is dit in gebruik voor de revisie boom maar ook wanneer een eenvoudige log in de offline modus wordt bekeken. De caches zijn als SQLite databases opgeslagen in `$HOME/.sqvnqt/logcache`. Elk genummerd bestand is een opslag voor een andere repository.

De databases kunnen groot worden! Het automatische updaten van de logcache kunt u daarom uitschakelen in de instellingen.

U kunt ook eenvoudig een database verwijderen, dan zal er geen cached log terugkomen voor deze repository (en geen revisie boom!) maar als het automatisch updaten van de cache niet is uitgeschakeld, zal de cache weer opnieuw gevuld worden wanneer u de repository of een bijbehorende werkkopie opent

#### Offline-modus

&kdesvn; kan werken zonder netwerk-toegang, &ie; u kunt netwerk-toegang voor &kdesvn; uitschakelen. Dit kan handig zijn als u zonder een netwerk werkt zoals met een notebook. In zulke gevallen haalt &kdesvn; altijd de logs vanuit de interne cache. Deze log is vanwege technische redenen beperkt tot basisfuncties, daarom kan de cached log (maar hoeft niet) verschillen van de echte log. Verschillen betekent dat niet alle bewerkingen te zien zijn, zelfs als Log volgt nodechanges is ingeschakeld.

#### Logcache en revisie boom

De revisie boom gebruikt alleen de logcache omdat anders iedere keer de logs opnieuw moeten worden opgehaald. Het ververst NIET de logcache (maar dit kan veranderen in een latere release).

### Betekenissen van de pictogrammen

Items die niet in een normale staat zijn, kunnen gemarkeerd zijn met een icoon.

Vergrendeld

- Dit item is vergrendeld. In de laatste kolom wordt de eigenaar van het slot genoemd. &kdesvn; kunt u instellen dat het ook naar vergrendelde items zoekt. Wees voorzichtig: afhankelijk van het type server, kan dit een lange tijd in beslag nemen!

Vergrendelen vereist

- Dit item moet u vergrendelen voordat u het weer kunt bewerken en samenvoegen. Totdat het vergrendeld is, houdt subversion het als "alleen lezen".

Elementen voor bijwerken

- Dit item of (als het een map is een item daarin) heeft een nieuwere versie in repository.

Gewijzigd

- Dit item (als het een map is een item daarin) is veranderd op de lokale schijf.

Toegevoegd

- Dit item is lokaal toegevoegd aan subversion maar nog niet vastgelegd (commit).

Verwijderd

- Dit item is lokaal verwijderd van subversion maar nog niet vastgelegd (commit).

Verwijderd

- Dit item (als het een map is een item daarin) heeft conflicten (die u moet oplossen) gekregen met de laatste update.

### &kdesvn; en wachtwoorden

&kdesvn;/subversion kan wachtwoorden opslaan. Het opslaan van wachtwoorden heeft altijd een risico, maar het maakt de grafische userinterface wel meer gebruiksvriendelijk.

#### Wachtwoorden niet opslaan

De meest veilige manier, maar soms onhandig met GUI's zoals &kdesvn;. Speciaal de achtergrond processen van &kdesvn; zullen altijd een wachtwoord vragen als de respository de toegang heeft beperkt voor lees operaties zoals update en status. Hetzelfde geldt voor commit enzovoorts. Dus als U de wachtwoorden niet opslaat, kunt U beter Controleren voor updates wanneer een werkkopie geopend wordt en anderen uitschakelen.

#### Wachtwoorden opslaan in &kwallet5;

Veilige opslag van wachtwoorden wordt veel gebruikt in &kde;-programma's zoals &kmail; en &konqueror;. Als U wachtwoorden wil opslaan (en de meeste die &kdesvn; gebruiken, willen dit), dat zou u dit willen gebruiken. Bedenk wel dat versleutelde opslag geen heel erg veilige opslag (high-secure storage) is. Voor details lees de &kwallet5; documentatie.

#### Wachtwoorden opslaan in subversions eigen wachtwoord opslag

Dit word niet aanbevolen omdat het wachtwoord als leesbare tekst is opgeslagen, niet geloofwaardig? Kijk dan maar in de bestanden in `~/.subversion/auth/svn.simple`. Doe dit alleen als ook regelmatig andere clients dan &kdesvn; zoals rapidsvn of esvn of de originele svn commandline client. Als meestal de commandline client wordt gebruikt voor checkouts of updates die geen wachtwoord nodig hebben en &kdesvn; voor commit/move/copy, gebruik in dat geval &kwallet5;.

#### Interne wachtwoord cache

De interne wachtwoord-cache kunt u inschakelen, zodat het wachtwoord onthouden wordt zolang &kdesvn; in het geheugen is. Het is dan niet nodig om een wachtwoord twee keer in te voeren als u het niet in &kwallet5; heeft opgeslagen.

#### Het speciale geval svn+ssh

Wanneer u subversion via svn+ssh gebruikt, dan kunt u wachtwoord opslaan via ssh en ssh-agent. Hiervoor is ssh-toegang tot de andere machine en en repository nodig. Wanneer u hiervan gebruik maakt dan moet u gebruik maken van de public key authentication van ssh, en niet wachtwoord authentication. (Eigenlijk geeft ssh de voorkeur aan public key authentication). Hiervoor moet de public ssh-key in het doel worden geplaatst, ⪚ het repository systeem. SSH-wachtwoorden worden nooit door subversion wachtwoord opslag of &kwallet5; of de interne wachtwoord cache beheert.

Als de vraag voor het wachtwoord van de ssh-key ongewenst is, dan kan u ssh-agent, met een keuze-menu gebruiken: Subversion Voeg de ssh identities toe aan ssh-agent. Hier kunt u de ssh-key-wachtwoord voor de huidige sessie bewaren, zodat het niet nodig is om iedere keer het wachtwoord in te vullen.

## &konqueror;, KIO, &kdesvn;

### Beschrijving

Vanaf versie 0.7.0 heeft &kdesvn;, enkele modules die enkele commando's direct in de menu's van &konqueror; integreren.

KIO protocollen

- Zorgt voor het verwerken van de volgende protocols:

  - ksvn+http

  - ksvn+https

  - ksvn+file

  - ksvn+ssh

  - ksvn

  Deze protocols zijn alleen ontworpen voor repositories, niet voor werkkopieën. B.v. `ksvn+file:///`pad`` moet naar een ander startpunt wijzen dan het programma zelf of Kpart. Werkkopieën kunt u bekijken met &konqueror;.

  Om door een specifieke revisie te bladeren, moet u de volgende zoekopdracht geven ?rev=`revision` naar de &URL;.

Contextmenu's

- &kdesvn; installeert context menu's voor &konqueror;. Deze zijn zichtbaar na een rechter muisklik in het het venster (alleen in het standaard venster, niet in KPart), het is daarom mogelijk om de meeste acties direct in &konqueror; uit te voeren (of elke andere bestandsbeheerder die &konqueror;s context menu's kan gebruiken zoals &dolphin;). Dit wordt gedaan via een call naar de commandoregel variant van &kdesvn;.

#### Gebruik van KIO buiten &konqueror; - een voorbeeld

Elk programma, die de KIO-biblotheek gebruikt, kan deze protocollen gebruiken. Het is daarom mogelijk om zonder veel kennis alle verschillen tussen twee revisies te verkrijgen met &kdiff3;.

##### Het verschil verkrijgen tussen twee revisies door gebruik van &kdiff3; en KIO::ksvn

    kdiff3 \
      ksvn://anonsvn.kde.org/home/kde/trunk/KDE/arts?rev=423127 \
      ksvn://anonsvn.kde.org/home/kde/trunk/KDE/arts?rev=455064

Laat kdiff3 alle verschillen tussen twee revisie's tonen.

Letop! Gebruik hiervan in &kdesvn;(diffen tussen twee revisie's) is VEEL sneller omdat het de interne mechanisme van subversion gebruikt.

### Informatie over KIO::ksvn voor programmeurs

U kunt dit gedeelte overslaan indien u niet geïnteresseerd bent in KIO-programmeren.

KIO::ksvn::special kent de volgende bewerkingen.

#### Commandolijst

#### Commando overzicht voor `KIO::ksvn::special`

Commandonaam | Numerieke id | Parameter lijst | In de huidige versie ingevoerd?
Checkout | 1 | KURL repository, KURL target, int revnumber, QString revkind Het doel wordt niet veranderd, ⪚, maar de inhoud wordt uitgecheckt zonder een submap te maken! b.v. de bron is `http://server/repos/project/trunk` en als het doel is `/home/user/proj/`, dan zal de inhoud van trunk gekopieerd worden naar `/home/user/proj/` en niet naar `/home/user/proj/trunk/`! | Ja
Bijwerken | 2 | KURL url, int revnum, QString revstring Indien revnum < 0 de revstring is ingevoegd. De omschrijving van de opbouw van revstring vindt u in de Appendix. | Ja
Vastleggen (commit) | 3 | KURL::List urls Geeft een overzicht met lokale URL's om vast te leggen. Vraagt naar een log | Ja
Log | 4 | int startrevnumber, QString startrevstring, int endrevnumber, QString endrevstring, KURL::List Gebruik dit voorzichtig - dit kan veel data produceren. | Ja
Importeren | 5 | KURL targetrepository, KURL sourcepath | Ja
Toevoegen | 6 | KURL | Ja
Del | 7 | KURL::List | Ja
Terugdraaien | 8 | KURL::List Terugdraaien in KIO is altijd niet-recursief, geen vragen (aanroepend programma moet dat zelf doen) | Ja
Status | 9 | KURL item, bool checkRepos, bool recurse item - het item waarover informatie opgevraagd moet worden, checkRepos - controleert of er nieuwere versies zijn in de repository, recurse - controleert recursief of niet. | Ja
Mkdir | 10 | KURL::List | Ja
Oplossen | 11 | KURL, bool recursive | Ja
Wisselen | 12 | KURL working_copy_path, KURL new_repository_url, bool recursive,int revnumber, QString revkind | Ja
Diff | 13 | URL uri1, KURL uri2, int r1, QString rstring1, int r2, QString rstring 2, bool recursive Voor verschillen tussen het repository bestand:/// en de werkkopie, de URL van de werkkopie kan zonder protocol ingesteld worden! | Ja

#### Teruggegeven waarden

Return waarden mogen gegeven worden via metadata, lees apidoc voor de details.

#### Inhoud van metagegevens

Sleutel | Mogelijk waarde
pad | Het pad van het item waarop een actie is uitgevoerd, ⪚ een gegeven url.
actie | Numeric action type
soort | Soort item (meestal een map of een bestand)
mime_t | Subversion mimetype van item
Inhoud | De inhoud (subversion waarde)
prop | Eigenschappen (subversion waarde)
rev | De resulterende revisie of de revisie waarmee is gewerkt
tekenreeks | Intern leesbare bericht.
loggedaction | Door subversion gedefinieerde actie string voor item (A,M,D)
loggedcopyfrompath | Via welk pad gekopieerd? (mag leeg zijn)
loggedcopyfromrevision | Van welke revisie gekopieerd? (mag < 0)
loggedpath | Via welk enkel pad de logged actie worden weggeschreven. (pad is ingesteld naar het opgeroepen url)
diffresult | Een regel van een verschil output

## &kdesvn; via de commandoregel gebruiken

### Overzicht

Sommige subversion opdrachten kunnen via de commandoregel worden uitgevoerd, ⪚, zoals een standaard commandoregel client maar interactie met een gebruiker gebeurt via het UI. De standaard syntax is `kdesvn exec `command` `parameter` `url``.

Als een enkele revisie van een enkele &URL; is gewenst, dan kan dit als parameter ingesteld worden via

    svn://your-server/path-to-repository/item?rev=<your-rev>

. Dit overschrijft de optie `-r <rev>`.

Een revisie kunt u opgeven als een nummer of als `HEAD` of `BASE` of als een datum zoals {YYYY-MM-DD}.

### Commandolijst

Als in het volgende overzicht als mogelijke parameter `-r `revisie`` is gegeven, dan kunt u dit instellen als ``url`?rev=`de-revisie``.

### Subversion commando's

Commando | Betekenis | Geaccepteerde opties
commit (or ci) | Legt veranderingen van een item vast (commit) naar de repository |
log | Geeft de log van een item | -r startrevision:endrevision -l limit_display
cat | Toont de inhoud van een item. | -r revision
copy (of cp) | Kopieert een item binnen een werkkopie of een repository. Als er geen doel is opgegeven, dan vraagt &kdesvn; ernaar. |
move (of mv, rename) | Verplaats/Herbenoem een item binnen een werkkopie of een repository. Als er geen doel is opgegeven, dan vraagt &kdesvn; ernaar. |
get | Verkrijg de inhoud van een item en slaat het op | -r revision -o <outputfile> (output is vereist!)
blame (of annotate) | Aantekeningen bij bestand | -r startrevisie:eindrevisie
bijwerken | Een item in de werkkopie updaten | -r revision
diff | Vergelijk (diff) twee revisie´s van een item of vergelijk (diff) twee items bij bepaalde revisie´s. | -r startrev:endrev
info | Gedetailleerde informatie over een item. | -r revision
checkout (of co) | Checkout repository-pad naar een nieuw werkkopie-pad. Er wordt gevraagd naar het doelpad en de bron-revisie. |
checkoutto (of coto) | Checkout repository-pad naar een nieuw werkkopie-pad. Er wordt gevraagd naar het verschil van de bronpad en bron-revisie. |
exporteren | Exporteert de repository- of werkkopie-pad naar een map. Er wordt gevraagd naar het doelpad en de bron-revisie. |
exportto | Exporteert repository- of werkkopie-path naar een map. Er wordt gevraagd naar het bronpad en de bron-revisie. |
delete (del, remove, rm) | verwijder de url(s) van de repository of de werkkopie. |
add | Voegt een &URL; toe aan een werkkopie. De &URL; moet aan een werkkopie toebehoren (het is niet een import!) |
revert (of undo) | Maakt de huidige veranderingen aan de werkkopie weer ongedaan. Mag alleen gebruikt worden bij werkkopieën! |
checknew (of addnew) | Controleert in een opgegeven &URL; voor nieuwe, items zonder revisie en voegt ze dan (indien gewenst) toe aan de werkkopie. |
boomstructuur | Toont de revisie-boom van een item (alleen het eerste argument), Als de &URL; met de parameter ?rev=`xxx` wordt gegeven, dan start de revisie-boom vanaf hier. | -r startrev:endrev
vergrendelen | Vergrendel url(s), als de parameter `-f` wordt meegegeven dan worden bestaande vergrendelingen verwijderd. | -f
ontgrendelen | Ontgrendeld een url(s), Als de parameter `-f` wordt meegegeven worden ook vergrendelingen die niet in eigendom zijn ontgrendeld en niet bestaande vergrendelingen overgeslagen. | -f
help | Toont deze pagina |

### Parameters voor subversion commando's

Parameter | Mogelijke waarden | toegestaan voor
`-r` | `revisie` of `beginrev:einderev` | alles behalve vastleggen (commit)
`-R` | (geen) | alles behalve vastleggen (commit)
`-o` | `bestandsnaam` | get
`-l` | `aantal` | log
`-f` | (geen) | (un-)lock

#### Het log commando

Het log commando geeft een venster met de log van het gegeven &URL;. Met subversion 1.2 of hoger accepteert het filters &ie; hoeveel items het moet vertonen.

In het venster kan men log-entries selecteren en de verschillen daartussen zien.

##### Toon de laatste 20 toevoeg (commit) logs

    kdesvn exec log -l 20 -r HEAD:1 myfile.c

Let op de volgorde van de revisie's: U wilt van HEAD naar START gaan voor de LAATSTE. Geef daarom revisie HEAD op als startpunt, anders krijgt u de eerste 20 entries te zien.

#### Het diff commando

U krijgt de verschillen te zien tussen revisie's van een item of tussen items in een dezelfde werkkopie of repository. Als u de revisie's van een item vergelijkt (diff), dan mag u deze revisie's opgeven als `-r `STARTREV`:`ENDREV``. Als u een item in een werkkopie zonder een revisie vergelijkt (gediff't), dan wordt het verschil met de repository getoond.

##### Toon het verschil tegen de repository, &ie; lokale wijzigingen

    kdesvn exec diff myfile.c

##### Toont de verschillen tussen revisie's

    kdesvn exec diff -r 21:20 myfile.c

Wanneer twee items worden vergeleken (gediff't), dan mogen revisie's worden toegevoegd aan de &URL; van de items. ⪚:

    http://server/path/item?rev=HEAD

##### Vergelijken (diffing) van twee gemarkeerde versie's

    kdesvn exec diff http://www.alwins-world.de/repos/kdesvn/tags/rel_0_6_2 http://www.alwins-world.de/repos/kdesvn/tags/rel_0_6_3

## Instellingen

Via het instellingenscherm kunt u de instellingen veranderen. Ze zijn ingedeeld in verschillende deelschermen.

### Algemeen

Formaat van de pictogrammen | Hoe groot (vierkant) moeten de iconen in de hoofdlijst zijn
Bestandsinformatie tonen | Schakel deze optie in als u tekstballonnen wilt zien als u uw muis op een pictogram laat rusten.
Itemstatus met pictogramoverlay markeren | Items die niet in een "normale" staat zijn, kunnen gemarkeerd worden met een icoon. (lees ook overlay-meaning)
Sorteervolgorde items is hoofdlettergevoelig | De volgorde in het hoofdvenster is wel of niet hoofdlettergevoelig, &ie; if a is niet gelijk aan A.
Genegeerde bestanden tonen | In subversion voor negeren gemarkeerde items wel of niet tonen.
Maximum aantal logberichten in de history | Het aantal logberichten dat &kdesvn; moet onthouden.
Gekleurde annotatie tonen | Kleuren gebruiken voor annotaties gedefinieerd in de instellingendialoog.
Navigatie paneel gebruiken | Toon of verberg de boomstructuur van de repository.

### Subversion en getimede instellingen voor taken

### Subversion

Controleren voor updates wanneer een werkkopie geopend wordt | Bij het openen van een werkkopie onmiddellijk in de achtergrond starten van een controle voor updates.
Beginnen met vullen van de log-cache bij openen | Indien ingeschakeld, gaat &kdesvn; de logcache opnieuw vullen wanneer een repository of een werkkopie wordt geopend als de repository-&URL; niet lokaal is (`file://`)
Controleer of items de eigenschap svn:needs-lock hebben | Controleer bij werkkopieën of een item deze eigenschap heeft en toon in dat geval een speciaal icoontje ernaast. Dit inschakelen maakt het overzicht erg langzaam.
Bestandsdetails laden wanneer bestanden op afstand getoond worden | Indien ingeschakeld, haalt &kdesvn; meer gedetailleerde informatie over bestanden in de overzicht van repositories op afstand. Men kan dan vergrendelingen van anderen in het overzicht zien. Wees voorzichtig: dit inschakelen maakt de lijst ERG langzaam!
Item-informatie recursief opvragen | Indien ingeschakeld, zal `info` bij een map informatie over alle items in deze map verzamelen, kan erg langzaam zijn.
Wachtwoorden opslaan voor verbindingen op afstand | Het opslaan van wachtwoorden is vaak een veiligheidsprobleem. Subversion bewaart zijn wachtwoorden in een plat bestand, dat wil zeggen wachtwoorden in leesbare tekst! Wees daarom voorzichtig met het inschakelen hiervan en lees daarom ook het volgende item. In dit item wordt alleen verteld dat wachtwoorden opslaan de standaard is, u kunt dit voor speciale doelen veranderen in het login venster.
Wachtwoorden opslaan in KDE Portefeuille | Bij het bewaren van wachtwoorden is het bestand met leesbare tekst een gat in de veiligheid. &kdesvn; kan de wachtwoorden opslaan en ook weer gebruiken in de versleutelde &kde;-wallet in plaats van de normale plek (vanaf versie 0.12.0). Aan de andere kant kunnen andere subversion-cliënt's dit niet inlezen, dus moet u bij het gebruik van programma's zoal svn-commandline of rapidsvn ze toch opnieuw invoeren. Zolang subversion de opslag van wachtwoorden niet versleuteld is het misschien verstandiger om ze helemaal niet op te slaan.
Interne wachtwoord cache gebruiken | Als een wachtwoord niet definitief is opgeslagen dan kan &kdesvn; het onthouden totdat &kdesvn; afsluit, u hoeft het daarom niet bij iedere gebeurtenis opnieuw in te voeren. Deze cache is niet permanent, het wordt dus nergens opgeslagen.
Logbestanden houden node-veranderingen bij | Indien ingeschakeld, komen kopieeracties ook in de log.
Log leest altijd een lijst van gewijzigde bestanden | Het logcommando kan een overzicht van gewijzigde bestanden in de vastlegging (commit) opnemen. Dit is erg handig en meestal kost dit niet meer verkeer.
Items nakijken voor vastleggen | Wanneer toevoeging wordt uitgevoerd, kan &kdesvn; controleren wat te doen. Als bijvoorbeeld er items zonder revisie zijn toegevoegd, dan krijgt u de veranderde items te zien en legt daarna vast (commit). Dit kost afhankelijk van de boom meer of minder tijd.
Nieuw items in vak voor vastleggen (commit) verbergen | Moeten items zonder revisie getoond worden in vastleg dialoog.
Update wijzigt in plaats van conflicten veroorzaken | Indien ingesteld resulteert een lokale toevoeging op hetzelfde pad als een inkomende toevoeging van dezelfde soort node in een normale node met een mogelijk lokale wijziging, in plaats van een conflict in de boomstructuur.
Bijwerken maakt ontbrekende hogere mappen | Indien ingesteld, maak elke niet-bestaande hogere mappen aan, ook door ze te ze te controleren bij depth=empty

### Getimede jobs

Op gewijzigde items controleren elke N seconden Controleer op bijgewerkte items elke N seconden | Indien ingeschakeld, zal van de werk-kopie regelmatig op updates of wijzigingen gecontroleerd worden, wanneer netwerk is ingeschakeld

### Diff & Merge

Diff negeert inhoudstype

- Alleen interessant wanneer de diff is gemaakt met subversion zelf. Indien ingeschakeld, negeert subversions diff de inhoudstype van de items. Anders geeft het geen diffs van binaries.

Vergelijking (diff) in revisieboom is recursief

- Indien ingeschakeld, zijn vergelijkingen (diffs) in een revisieboom recursief zoals in alle andere gevallen. Anders krijgt u alleen alleen de veranderde items in die map te zien. Hoe dat wordt gedaan is afhankelijk van hoe de vergelijkingen (diff) worden gemaakt (door subversion zelf of door een extern programma).

Diff negeert wijzigingen in witruimte

- Negeert veranderingen in de hoeveelheid spaties (optie `-b` naar diff)

Diff negeert alle spaties

- Negeer alle spatie's (optie `-w` van diff)

Extern samenvoegprogramma gebruiken

- Schakel dit in om een extern programma te gebruiken en niet de samenvoegmogelijkheid van Subversion

Het git-diff-formaat gebruiken

Kopieën als toevoegen tonen

#### Externe diff-weergave gebruiken

De selectie van een extern programma voor het tonen van verschillen (diffs). De standaard is &kompare;.

#### Externe diff-weergave

Bepaalt wat &kdesvn; gebruikt voor de externe weergave van verschillen en hoe het aanroept. Dit kan op drie manieren:

<programma> <parameter>

- De vergelijking wordt gemaakt door subversion en direct aan de standaard input van het externe programma doorgegeven (voordeel: geen tijdelijke bestanden nodig)

<programma> <parameter> %f

- De vergelijking wordt gemaakt door subversion, bewaart in een tijdelijk bestand, waarbij de parameter `%f` wordt vervangen door het bestandsnaam. Dit kan worden gebruikt bij een eenvoudige aanroep naar less of een textviewer.

<programma> <parameter> %1 %2

- &kdesvn; laat een extern programma de vergelijking uitvoeren. %1 en %2 worden vervangen door de verlangde waarden (bestandsnamen of mappen). &kdesvn; bewaart de inhoud die vergeleken moet worden in een tijdelijke omgeving (indien mappen een export uitvoeren, indien een enkel bestand een cat uitvoeren) wanneer nodig en ruimt op na het sluiten van het externe programma of zichzelf.

Extern samenvoegprogramma gebruiken

- Indien in het (merge) samenvoeg dialoog Externe samenvoeging gebruiken, niet die van Subversion is wel of niet aangevinkt.

#### Externe samenvoeg programma

Stelt het programma en de mogelijkheden daarvan in voor gebruik wanneer de ingebouwde mogelijkheden van subversion ongewenst zijn. De standaard is `kdiff3 %s1 %s2 %t`. De volgorde van de vervangende variabelen is niet belangrijk, en kunnen meer keren voorkomen, ⪚ zoals `kdiff3 -o %t %s1 %s2 %t`. Dit is alleen getest met meld en &kdiff3;. Bedenk dat externe programma's meestal geen weet hebben van subversion `ignore`-parameters en dat daarom veel meer te zien is dan verwacht.

##### Vervangings-variabelen voor het externe (merge) samenvoegprogramma

%s1

- Vervangen door bron nummer een.

%s2

- Vervangen door bron nummer twee. Als dit leeg is of gelijk aan bron een en begin- en eindrevisie is hetzelfde, dan wordt deze variabele overgeslagen. Wees dus voorzichtig met opstellen van commandoregels zoals `xxdiff --title1 %s1 --title2 %s2 %s1 %s2 %t`.

%t

- Vervang door doel.

#### Conflict oplossend programma

U kunt een extern programma zoals &kdiff3; gebruiken voor het oplossen van conflicten, de standaard keuze is `kdiff3 %o %m %n -o %t`.

##### Variable substitutie voor externe conflict oplossend programma

Tussen haakjes na elke beschrijving een voorbeeld hoe subversion de bestanden oproept. Deze keuzes zijn ontworpen voor &kdiff3;, omdat op dit moment dit het enige programma is die alle parameters ondersteund die nodig zijn om een conflict goed op te lossen.

%o of %l

- Oude (lokale,links) versie. Dit betekent dat de lagere revisienummer, &ie; is bijvoorbeeld het startpunt van de veranderingen waar een conflict begint. (`foo.cc.r2`)

%m of %w

- Mijn (werkende) versie van het bestand, &ie;. waar iets verandert is tegenover de oude versie. (`foo.cc.mine`)

%n of %r

- Nieuwe (remote, rechts) versie van het bestand, ⪚ de versie die een ander heeft gemaakt. (`foo.cc.r3`)

%t

- Doel naam, ⪚ de originele naam. Voor &kdiff3; (als voorbeeld) moet dit achter `-o` parameter (= output file). (`foo.cc`)

### KIO / commandoregel

Log tonen na het uitvoeren van een commando

- Moet een dialoog openen met de log van de laatste via de commandoregel of via &konqueror; gegeven subversion-commando.

Minimaal aantal getoonde logregels:

- Indien Toon log... is ingeschakeld, dan is dit het minimum aantal regels dat dit dialoog zal tonen. Zodat dit zo ingesteld kan worden dat alleen interessante output te zien is (vastleg-log enzovoorts).

Contextmenu niet weergeven in &konqueror;

- Indien ingeschakeld, dan is er geen menu-item voor &kdesvn; in &konqueror; te zien.

Items niet tonen in actie-menu op topniveau

- Wanneer dit is ingesteld zal kdesvn geen extra acties in het menu Actie van &konqueror; of &dolphin; tonen;.

KIO-handelingen gebruiken de standaard logberichten

- Bij het bewerken van een repository via het &kdesvn; KIO protocol vanuit &konqueror; (&ie; het ksvn+...-protocol) met grote operaties zoals het verplaatsen of kopiëren van mappen, dan zal &kdesvn; voor elk item een logbericht vragen. Dit is normaal gedrag van &konqueror;. Wanneer dit is ingeschakeld, dan zal de KIO-implementatie van &kdesvn; niet vragen voor een logbericht maar een standaard logbericht meegeven. Dit gebeurt niet bij acties vanuit het &kdesvn;-menu voor &konqueror; maar alleen bij het kopiëren/verplaatsen/verwijderen van mappen in &konqueror; of een andere bestandsbeheerder met een KIO-url.

Standaard bericht

- Het bericht dat &kdesvn;-KIO zou moeten geven bij bewerkingen vanuit &konqueror; wanneer bovenstaande vlag is gezet. Standaard is Revision made with &kdesvn; KIO.

KIO kan overschrijven

- Als deze vlag is gezet hebt u een eenvoudige ondersteuning voor schrijven voor bestaande items. U kunt ⪚ bestanden openen in uw editor en ze direct, zonder van te voren uitchecken, opslaan (&kdesvn; zal dat in de achtergrond doen).

  Dit alleen gebruiken als u weet wat u doet.

KIO toont voortgangsberichten

- Indien geactiveerd zal KIO in Plasma van KDE gedetailleerde informatie tonen over huidige bewerkingen. Foutmeldingen van KIO zullen altijd getoond worden en kunnen niet worden uitgeschakeld.

## Overzicht van de opdrachten

### Het hoofdvenster van &kdesvn;

#### Het menu Bestand

&Ctrl;O Bestand Openen

- Opent een lokale werkkopie of een al eerder uitgecheckte repository.

Bestand Recent geopende URL's

- Dit is een sneltoets om recent geopende repositories te openen. Klikken op dit item opent een lijst aan de kant van het menu met verschillende van de meest recent geopende lokale werkkopieën of een repository. Klikken op een specifiek item zal het openen in &kdesvn;

&Ctrl;N Bestand Nieuw

- Opent een venster met een nieuw exemplaar van &kdesvn;

Bestand Subversion Admin

- Menu-items met beheerstaken voor subversion repositories zoals:

  - Een nieuwe repository maken en openen
  - Dump repository naar bestand
  - Hotcopy een repository
  - In repository laden en dumpen
  Voor meer informatie lees de uitvoer van `svnadmin --help`

&Ctrl;W Bestand Sluiten

- Sluit de huidige geopende repository of werkkopie.

&Ctrl;Q Bestand Afsluiten

- Beëindig &kdesvn;

#### Het menu Bladwijzers

Lees de helppagina´s van &konqueror;.

#### Het menu Subversion

#### Algemene subversion actie's

&Ctrl;L Subversion Algemeen Geschiedenis van item

- Toont de levenslange log van het geselecteerde item. Wees voorzichtig, deze lijst kan erg lang zijn!

&Ctrl; &Shift;L Subversion Algemeen Geschiedenis van item met negeren van kopieën...

- De geschiedenis log voor geselecteerde item tonen zonder volgende kopieën tonen.

&Ctrl;I Subversion Algemeen Details

- Toont gedetailleerde informatie over het geselecteerde item(s)

Subversion Algemeen Blame

- Maakt een lijst met aantekeningen (annotatie's) over alle vastleggingen (commit). Dit kan veel tijd kosten!

Subversion Algemeen Blame bereik

- Stelt het bereik in voor de vastleggingen (commit) van een bestand.

Subversion Alge Cat head

- Toont de inhoud van de laatste vastgelegde (commit) versie van het item. (Dit kan verschillen met de werkkopie indien er gewerkt is aan de werkkopie!)

F2 Subversion Algemeen Verplaatsen

- Verplaats of hernoem een item in een werkkopie of in de repository.

&Ctrl;C Subversion Algemeen Kopiëren

- Kopieer een item in werkkopie of in een repository

Del Subversion Algemeen Gemarkeerde bestanden/mappen verwijderen

- Verwijdert de geselecteerde items. Indien men in een werkkopie werkt, u moet daarna de verwijderingen vastleggen.

Subversion Algemeen Nieuwe map

- Een nieuwe map maken.

Subversion Algemeen Mappen importeren in huidige map

- Selecteer de mappen die u wilt importeren naar de huidige geselecteerde map.

Subversion Algemeen Repository uitchecken

- Maakt een nieuwe werkkopie van een repository.

Subversion Algemeen Repository exporteren

- Exporteert een repository naar een bestandsysteem, maakt &ie; een schone boom van mappen zonder de subversion-informatie.

Subversion Algemeen Huidige items vergrendelen

- Markeer de huidige items als vergrendeld. Lees voor het gebruik eerst het subversion handboek!

Subversion Algemeen Huidige items ontgrendelen

- Ontgrendel de huidige items. Lees voor het gebruik eerst het subversion handboek!

#### Werkkopie

Subversion Werkkopie Bijwerken naar HEAD

- De werkkopie bijwerken naar de HEAD van de repository

Subversion Werkkopie Bijwerken naar revisie...

- De werkkopie bijwerken naar een bepaalde revisie van de repository.

&Ctrl;# Subversion Werkkopie Vastleggen (commit)

- Legt de veranderingen van de gemarkeerde items in de werkkopie vast (commit) naar de repository.

&Ctrl;D Subversion Werkkopie Verschil bepalen lokale wijzigingen

- Toont de lokale verschillen als een diff-output (zonder toegang tot een netwerk). Dit is alleen het verschil tegen de laatste bijgewerkte stand van de werkkopie, niet tegen de versie in de repository.

&Ctrl;H Subversion Werkkopie Verschil met HEAD

- Diff's de huidige werkkopie tegen HEAD van de repository.

&Ctrl;P Subversion Werkingkopie Eigenschappen

- Tonen/Bewerken van eigenschappen van het huidige item.

Insert Subversion Werkkopie Gemarkeerde bestanden/mappen toevoegen

- Voeg de gemarkeerde bestanden/mappen toe aan aan revisie controle.

Subversion Werkkopie Huidige veranderingen terugdraaien

- Maak de veranderingen in de werkkopie ongedaan naar de laatste bijgewerkte toestand.

Subversion Werkkopie Opgelost markeren

- Markeer de in conflict zijnde items als "niet in conflict" en verwijder de daarbij horende bestanden.

Subversion Werkkopie Twee revisies samenvoegen

- Voeg twee revisies van een item samen (merge )in de werkkopie.

Subversion Werkkopie Huidige item negeren/negeren opheffen

- Bewerk de eigenschap van de bovenliggende map van dit item zo dat dit item gemarkeerd wordt als negeren of juist weer van de negeer-lijst verdwijnt.

Subversion Werkkopie Opruimen

- Ruim de werkkopie op en verwijder de aanwezig zijnde (commit-)vergrendelingen.

Subversion Werkkopie Repository switchen

- Opent de repositoryboom van een andere werkkopie.

#### Repository

Subversion Repository Huidige repositorypad uitchecken

- Maakt een werkkopie van de huidige geselecteerde item als het een map is.

Subversion Repository Huidige repositorypad exporteren

- Maakt een schone kopie op het lokale bestandsysteem van de geselecteerde item als het een map is.

#### Acties bekijken

F5 Subversion Beeld Beeld verversen

- Vernieuw de huidige weergave van alle getoonde items. Dit toont de huidige status van alle gevraagde items.

Subversion Beeld Boomweergave van bestanden uitklappen/ Boomweergave van bestanden inklappen

- Meer of minder tonen van de boomstructuur van de repository.

Subversion Logcache Stop met bijwerken van de logcache

- De log is in de cache en gebruikt om de revisieboomstructuur van een repository te tonen. Afhankelijk van de Internetverbinding, grootte van de subversion-repository en lengte van de geschiedenis kan dit veel tijd kosten. Daarom kunt u het bijwerken van de cache stoppen met deze actie.

Subversion Ssh-identiteiten aan ssh-agent toevoegen

- Sla het ssh-key-wachtwoord voor de huidige sessie op, zodat het verder niet nodig is om het wachtwoord in te voeren.

#### Het menu Database

Database Inhoud van database tonen

- Toont een overzicht over de cache-database-inhoud voor bekende repositories en staat toe om de cache of repository en toegang naar de instellingen van de repository.

Database Instellingen voor de huidige repository

- Een dialoog tonen om de instellingen voor de cache, logs en statistieken aan te passen.

#### De menu's Instellingen en Help

Los van de gemeenschappelijke &kde;menu-items Instellingen en Help beschreven in de Menu Instellingen en Help Menu van de &kde; Fundamentals &kdesvn; is er dit extra menu-item:

Instellingen Snelle instellingen

- Laatst geopende URL-adres openen bij het opstarten

- Laatst geopende URL-adres herladen indien er niets via de commandoregel is opgegeven.

Logbestanden houden node-veranderingen bij

Genegeerde bestanden tonen

- In subversion voor negeren gemarkeerde items wel of niet tonen.

Onbekende bestanden tonen

- Niet aan de subversion repository toegevoegde bestanden tonen.

Ongewijzigde items verbergen

- Deze actie tonen om alleen gewijzigde bestanden te tonen en een helder en samengevat overzicht te leveren.

Online werken

- Offline werkend zal de log-cache niet worden bijgewerkt, de log in de cache kan verschillen van de echt log.

## Dankbetuigingen en licentie

Auteursrecht programma: 2005-2009 &Rajko.Albrecht; &Rajko.Albrecht.mail;

Hartelijk dank aan de volgende personen:

- Andreas Richter ar@oszine.de - voor qt4 port van svnqt

- Michael Biebl biebl@teco.edu - voor veel hulp, ideeën, implementatie en aanwijzingen.

- Bram Schoenmakers bramschoenmakers@kde.nl - voor &kde;-specifieke aanwijzingen, Nederlandstalige vertaling, opschonen van mijn code.

Hartelijk dank aan alle andere vertalers (Ik had nooit gedacht dat ik zo snel zoveel vertalingen zou krijgen!) en voor alle positieve en negatieve terugkoppelingen. Dat heeft veel geholpen.

Indien U Uw eigen vertaling van &kdesvn; wilt en hulp wenst, lees meer op de &kde; Localization page of vraag hulp op de kde-i18n-doc@kde.org mailing list.

Auteursrecht documentatie 2005-2006 &Rajko.Albrecht; &Rajko.Albrecht.mail;

&meld.fouten;&vertaling.freek;&vertaling.ronald; &underFDL; &underGPL;

## Opbouw voor revisies

Revisies kunt u in dezelfde vorm opgeven als bij de standaard svn-client. Dit betekent: een getal, trefwoord of een datum.

Aantal

- Een getal gelijk of groter dan -1. -1 betekend unspecified revision, 0 is het begin. Normaal gesproken is het beter als u deze nummers niet gebruikt (de meeste opdrachten zullen hiermee mislukken).

Trefwoord

- Één van

  - HEAD

  - BASE

  - COMMITED

  - PREV

  - START

  - WORKING

  De trefwoorden zijn hoofdlettergevoelig! Bijvoorbeeld head is niet hetzelfde als HEAD.

Datum

- Datums moeten in de vorm {YYYY-MM-DD} zijn. Het moet echt MM of DD zijn - ⪚ 2005-1-1 moet u schrijven als {2005-01-01}.

Een specifieke revisie toevoegen naar &URL; moet u altijd via ?rev=`revisie` opgeven.

&documentation.index;