Warning, /sdk/kdesvn/doc/index.docbook is written in an unsupported language. File is not indexed.

0001 <?xml version="1.0" ?>
0002 <!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
0003   <!ENTITY kdesvn "<application>kdesvn</application>">
0004   <!ENTITY % addindex "IGNORE">
0005   <!ENTITY Rajko.Albrecht '<personname><firstname>Rajko</firstname><surname>Albrecht</surname></personname>'>
0006   <!ENTITY Rajko.Albrecht.mail '<email>ral@alwins-world.de</email>'>
0007   <!ENTITY % English "INCLUDE"><!-- change language only here -->
0008 ]>
0009 
0010 <book lang="&language;">
0011 
0012 <bookinfo>
0013 <title>The &kdesvn; Handbook</title>
0014 
0015 <authorgroup>
0016 <author>
0017 <firstname>Rajko</firstname>
0018 <surname>Albrecht</surname>
0019 <affiliation>
0020 <address>&Rajko.Albrecht.mail;</address>
0021 </affiliation>
0022 </author>
0023 <!-- TRANS:ROLES_OF_TRANSLATORS -->
0024 </authorgroup>
0025 
0026 <copyright>
0027 <year>2005</year>
0028 <year>2008</year>
0029 <holder>&Rajko.Albrecht;</holder>
0030 </copyright>
0031 <legalnotice>&FDLNotice;</legalnotice>
0032 
0033 <date>2016-05-22</date>
0034 <releaseinfo>kdesvn 2.0</releaseinfo>
0035 
0036 <abstract>
0037 <para>
0038 &kdesvn; - a subversion client by &kde;.
0039 </para>
0040 </abstract>
0041 
0042 <keywordset>
0043 <keyword>KDE</keyword>
0044 <keyword>kdesvn</keyword>
0045 <keyword>subversion</keyword>
0046 <keyword>version control system</keyword>
0047 </keywordset>
0048 
0049 </bookinfo>
0050 
0051 <chapter id="introduction">
0052 <title>Introduction</title>
0053 
0054 <para>
0055 &kdesvn; is a <ulink url="http://subversion.apache.org/">subversion client</ulink> by &kde;.
0056 </para>
0057 <para>You should have some knowledge about subversion itself, but hopefully most items are self explanatory.
0058 </para>
0059 <para>
0060 You may send bug reports and feature wishes via <ulink url="https://bugs.kde.org/">&kde; Bugtracking System</ulink>.
0061 </para>
0062 
0063 <sect1 id="kdesvn-terms">
0064 <title>Terms</title>
0065 <para>
0066 If you're familiar with revision control systems you may skip that - or read and correct the author ;)
0067 </para>
0068 <para>
0069 <variablelist>
0070 <varlistentry>
0071 <term>Repository</term>
0072 <listitem><para>
0073 Central store of data. That may be a database or a flat filesystem. Without special clients you're not able to read
0074 data in it. For Subversion repositories &kdesvn; is such a client.
0075 </para></listitem>
0076 </varlistentry>
0077 <varlistentry>
0078 <term>Working copy</term>
0079 <listitem><para>
0080 A flat copy of a repository on local filesystem. This is used like any normal filemanager, editing files and so forth.
0081 RCS-information you can read with clients like &kdesvn;.
0082 </para>
0083 <para>
0084   Remember that subversion does not know anything about KIO, so a working copy must reside in an area where it may reached without any specific protocol, &eg; <quote>fish://</quote> or such is not possible.
0085 </para>
0086 </listitem>
0087 </varlistentry>
0088 <varlistentry>
0089 <term>WebDav</term>
0090 <listitem><para>
0091 WebDav is a protocol which let you modify files on a remote webserver. Subversion is a special kind of WebDAV when repositories are accessed
0092 via webserver. In normal use this is read-only. With special configurations you may get a read-write enabled WebDAV which you may access via
0093 specialized browser. &kdesvn; is NOT a webdav-client, but &konqueror; is via the <quote>webdav://</quote> protocol. But with &kdesvn; you
0094 may browse through the version tree of a repository (via <quote>http://</quote>)
0095 </para></listitem>
0096 </varlistentry>
0097 </variablelist>
0098 </para>
0099 </sect1>
0100 </chapter>
0101 
0102 <chapter id="using-kdesvn">
0103 <title>Using &kdesvn;</title>
0104 <sect1 id="kdesvn-features">
0105 <title>&kdesvn; features</title>
0106 <para>
0107 &kdesvn; understands following protocols for browsing repositories:
0108 <variablelist>
0109 
0110 <varlistentry>
0111 <term>http</term>
0112 <listitem><para>
0113 Standard web browser protocol.
0114 </para></listitem>
0115 </varlistentry>
0116 
0117 <varlistentry>
0118 <term>https</term>
0119 <listitem><para>
0120 Standard encrypted web browser protocol.
0121 </para></listitem>
0122 </varlistentry>
0123 
0124 <varlistentry>
0125 <term>(k)svn+http</term>
0126 <listitem><para>
0127 Standard web browser protocol. May be used to let &konqueror; automatic call &kdesvn;.
0128 </para></listitem>
0129 </varlistentry>
0130 
0131 <varlistentry>
0132 <term>(k)svn+https</term>
0133 <listitem><para>
0134 Standard encrypted web browser protocol. May be used to let &konqueror; automatic call &kdesvn;.
0135 </para></listitem>
0136 </varlistentry>
0137 
0138 <varlistentry>
0139 <term>(k)svn+file</term>
0140 <listitem><para>
0141 Local repository protocol. May be used to let &konqueror; automatic call &kdesvn;.
0142 </para></listitem>
0143 </varlistentry>
0144 
0145 <varlistentry>
0146 <term>(k)svn</term>
0147 <listitem><para>
0148 Subversion's own server protocol.
0149 </para></listitem>
0150 </varlistentry>
0151 
0152 <varlistentry>
0153 <term>(k)svn+ssh</term>
0154 <listitem><para>
0155 Subversion over ssh.
0156 </para></listitem>
0157 </varlistentry>
0158 
0159 <varlistentry>
0160 <term>file</term>
0161 <listitem><para>
0162 Direct repository access. &kdesvn; checks if a given path is a repository or a working copy and opens it in the right mode. For subversion
0163   <filename class="directory">file:///dir</filename> and <filename class="directory">/dir</filename> is not the same!
0164 </para></listitem>
0165 </varlistentry>
0166 </variablelist>
0167 </para>
0168 <para>
0169 This list may be used for &URL;s given for <link linkend="kdesvn-commandline">command line</link>, too.
0170 </para>
0171 </sect1>
0172 <sect1 id="first_steps">
0173 <title>Beginning with subversion and &kdesvn;</title>
0174 <para>
0175   This section is mostly for beginners not familiar with subversion and explains how subversion and/or revision control systems (<acronym>RCS</acronym>) works.
0176 </para>
0177 
0178 <sect2>
0179 <title>Creating a working copy</title>
0180 <caution>
0181 <para>
0182 Working copies MUST be accessible via local paths. Subversion does not know anything about pseudo file systems like
0183 <filename class="directory">smb://</filename> or <filename class="directory">fish://</filename>. &kdesvn; translates some of them if possible (like <filename class="directory">system:/home</filename>) but it is not possible over a network.
0184 </para>
0185 </caution>
0186 <para>
0187 First of all you must create a working copy of your repository. For that select
0188 
0189 <menuchoice>
0190 <guimenu>Subversion</guimenu>
0191 <guisubmenu>General</guisubmenu>
0192 <guimenuitem>Checkout a repository</guimenuitem>
0193 </menuchoice>. Inside the following dialog you must select the &URL; of the repository you want to use, &eg;, something like
0194 <literal>http://localhost/repos/myproject</literal>. Subfolders of a repository are possible, too, &eg;,
0195 <literal>http://localhost/repos/myproject/trunk</literal> or similar.
0196 </para>
0197 <para>
0198 Select and/or create a local folder, where the working copy should reside.
0199 </para>
0200 <para>
0201 Last but not least, the revision to checkout. Mostly that should be <quote>HEAD</quote>. This ensures that the last stored version
0202 is the referenced version.
0203 </para>
0204 <para>
0205   After clicking on <guibutton>OK</guibutton> &kdesvn; will create your new working copy and (if the box was checked) opens it.
0206 </para>
0207 <para>
0208 When you have opened a repository for browsing you may mark a folder and than select
0209 <menuchoice>
0210 <guimenu>Subversion</guimenu>
0211 <guisubmenu>Repository</guisubmenu>
0212 <guimenuitem>Checkout current repository path</guimenuitem>
0213 </menuchoice>
0214 and fill out the dialogs as described above. Then only the marked path will checked out.
0215 </para>
0216 </sect2>
0217 <sect2>
0218 <title>Committing local changes</title>
0219 <para>
0220 Mark the entry or entries you want to send and select
0221 <menuchoice>
0222 <shortcut>
0223 <keycombo action="simul">&Ctrl;<keycap>#</keycap></keycombo>
0224 </shortcut>
0225 <guimenu>Subversion</guimenu>
0226 <guisubmenu>Working copy</guisubmenu>
0227 <guimenuitem>Commit</guimenuitem>
0228 </menuchoice>
0229 </para>
0230 <para>
0231 If you try to commit if no item is selected, &kdesvn; uses the top-most element of opened working copy, &ie;, the working copy path itself.
0232 </para>
0233 <para>
0234 This operation is always recursive, means, if selecting a folder &kdesvn; always send all changed items below it. When you setup that you want to review all items before commit inside the following dialog all items &kdesvn; would send are listed. There you may unmark items you don't want to send. In that case &kdesvn; sends all items alone, &ie;, not recursive. Or you may select items not versioned for add and commit (if them are not marked to be ignored). So you may see if there are newer items you forgot.
0235 </para>
0236 <para>
0237   Enter a log message what you're sending and hit <guibutton>OK</guibutton> and the transfer starts.
0238 </para>
0239 </sect2>
0240 <sect2>
0241 <title>Update working copy</title>
0242 <para>
0243 This brings you local working copy in sync with the repository. You may setup that &kdesvn; checks on opening a working copy for newer/modified items in repository. This runs in background and you may work meanwhile with &kdesvn;. When this is finished, items with newer versions or folders with items where newer items are below are marked.
0244 </para>
0245 <para>
0246 To retrieve the changes, select
0247 <menuchoice>
0248 <guimenu>Subversion</guimenu>
0249 <guisubmenu>Working copy</guisubmenu>
0250 <guimenuitem>Update to head</guimenuitem>
0251 </menuchoice>. This will update to the most latest version. If you want to get a specific revision select
0252 <menuchoice>
0253 <guimenu>Subversion</guimenu>
0254 <guisubmenu>Working copy</guisubmenu>
0255 <guimenuitem>Update to revision</guimenuitem>
0256 </menuchoice> and select the revision you want in the following box.
0257 </para>
0258 <para>
0259 If no item is selected, the update will done on whole opened working copy, otherwise only recursive on the selected items.
0260 </para>
0261 </sect2>
0262 <sect2>
0263 <title>Adding and Deleting from working copy</title>
0264 <para>
0265 Both operations requires two steps: First add or delete and then committing that changes to repository. Before you commit you may undone add or delete.
0266 </para>
0267 <sect3>
0268 <title>Add items</title>
0269 <para>
0270 Adding items into a working copy may be done due three ways:
0271 <variablelist>
0272 <varlistentry>
0273 <term>Select not versioned items and add them</term>
0274 <listitem><para>
0275 Copy with &konqueror; or any other tool into working copy area. Go trough list, mark them and select
0276 <menuchoice>
0277 <shortcut><keycombo action="simul"><keycap>Insert</keycap></keycombo></shortcut>
0278 <guimenu>Subversion</guimenu>
0279 <guisubmenu>Working copy</guisubmenu>
0280 <guimenuitem>Add selected files/dirs</guimenuitem>
0281 </menuchoice>.
0282  When you want adding new folders with all subitems select
0283 <menuchoice>
0284 <shortcut><keycombo action="simul">&Ctrl;<keycap>Insert</keycap></keycombo></shortcut>
0285 <guimenu>Subversion</guimenu>
0286 <guisubmenu>Working copy</guisubmenu>
0287 <guimenuitem>Add selected files/dirs recursive</guimenuitem>
0288 </menuchoice>.
0289 </para></listitem>
0290 </varlistentry>
0291 
0292 <varlistentry>
0293 <term>Check and add recursive</term>
0294 <listitem><para>
0295 You may check if there are somewhere in working copy unversioned items. After selecting
0296 <menuchoice>
0297 <guimenu>Subversion</guimenu>
0298 <guisubmenu>Working copy</guisubmenu>
0299 <guimenuitem>Check for unversioned items</guimenuitem>
0300 </menuchoice> a dialog appears where all not versioned items are listed. Hitting <guibutton>OK</guibutton> adds all marked items to working copy, items you don't want versioned you should unmark before.
0301 </para></listitem>
0302 </varlistentry>
0303 
0304 <varlistentry>
0305 <term>Drag and drop</term>
0306 <listitem><para>
0307 Mark in &konqueror; or any other compatible file browser items you want to add and drag them to &kdesvn;. You may drop them on folders inside the opened working copy and then &kdesvn; copy the dropped items to it and add the items.
0308 </para></listitem>
0309 </varlistentry>
0310 </variablelist>
0311 </para></sect3>
0312 <sect3>
0313 <title>Deleting items from working copy and unversion</title>
0314 <para>
0315 Deleting items is always recursive. For example, when you delete a folder all subitems will be deleted, too. Mark what you want and select
0316 <menuchoice>
0317 <guimenu>Subversion</guimenu>
0318 <guisubmenu>General</guisubmenu>
0319 <guimenuitem>Delete selected files/dirs</guimenuitem>
0320 </menuchoice> menu item. Items will be unversioned and removed from disk.
0321 </para>
0322 </sect3>
0323 </sect2>
0324 
0325 <sect2 id="logdisplay">
0326 <title>Displaying logs</title>
0327 <para>
0328 The log display may start with
0329 <keycombo action="simul">&Ctrl;<keycap>L</keycap></keycombo>
0330 when one or none item is marked in overview. Depending on your settings (see <xref linkend="subversion-settings" xreflabel="settings"/>) &kdesvn; retrieves some log entries beginning on <quote>HEAD</quote> and displays them.
0331 </para>
0332 <sect3  id="logdisplay-dlg">
0333 <title>The log display dialog</title>
0334 <para>
0335   On the left side you see the list of log entries retrieved by &kdesvn;. The log message is stripped-down to one line to fit. The full log message appears in the upper-right window when marking an entry. In the lower-right window you will see the list of changed files. These windows <emphasis>only</emphasis> appear if this list is fetched, depending on your settings.
0336 </para>
0337 <para>
0338 With the buttons on the top you may select another range of logs to display.
0339 
0340 <important><para>This range is called without any pre-limit, so be careful when using this feature on large repositories.</para></important>
0341 
0342 </para>
0343 <para>
0344 The buttons on the bottom of the dialog always work on the item selected for log, not on the item selected in the list of changed files. So when you select
0345 <guibutton>Diff previous</guibutton> there, it makes the diff over all changed items in this revision if they are equivalent or below the subversion
0346 entry selected before for retrieving logs. Same for <guibutton>Diff revisions</guibutton>.
0347 </para>
0348 <para>
0349 <guibutton>Annotate</guibutton> of course works only if item to log is a file.
0350 </para>
0351 <para>
0352   On all list entries (both lists) you have context menu enabled for some extra operations. In left list this is <guimenuitem>Set version as left side of diff</guimenuitem> (&ie; beginning revision) and <guimenuitem>Set version as right side of diff</guimenuitem> (&ie; end or target of diff, in unified the part marked with a <computeroutput>+++</computeroutput>). If you selected these revisions them are marked with some small arrows.
0353 </para>
0354 </sect3>
0355 </sect2>
0356 </sect1>
0357 
0358 <sect1 id="working-with-repositories">
0359 <title>Working on repositories</title>
0360 <para>
0361   Simple repository browsing may be done within &konqueror;, &dolphin; or similar file browsers: Open a URL with protocol described in <xref linkend="kdesvn-features" xreflabel="Features" /> (the variants starting with <quote>k</quote>) and them will display the content. So simple operations like copy, move and delete may work. When appending a query <quote>?rev=<replaceable>xxx</replaceable></quote> the listing comes from a specific revision. Format of revision-query is described in <xref linkend="revision-syntax" />, some more information about KIO::ksvn are in <xref linkend="kdesvn-kio" />
0362 </para>
0363 <para>
0364 All work except <guimenuitem>Copy</guimenuitem> may only done when browsing at revision HEAD.
0365 </para>
0366 <sect2>
0367 <title>Restoring deleted items</title>
0368 <para>
0369 In subversion restoring deleted items is a copy operation of item at specific revision. So when you plan restoring view repository at revision before item was deleted. Select
0370 <menuchoice>
0371 <guimenu>Subversion</guimenu>
0372 <guisubmenu>Repository</guisubmenu>
0373 <guimenuitem>Select browse revision</guimenuitem>
0374 </menuchoice>
0375 and enter the wanted revision. Now &kdesvn; displays the content at this term. Mark the entry you want to restore, select
0376 <menuchoice>
0377 <shortcut>
0378 <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>
0379 </shortcut>
0380 <guimenu>Subversion</guimenu>
0381 <guisubmenu>General</guisubmenu>
0382 <guimenuitem>Copy</guimenuitem>
0383 </menuchoice>. Inside the following dialog the target is always at HEAD revision, the source is at revision you selected for browsing. Fill in the path and click <guibutton>OK</guibutton> and copy starts. After successful copy switch browsing back to HEAD revision and the restored item should appear.
0384 </para>
0385 </sect2>
0386 <sect2>
0387 <title>Importing folders</title>
0388 <para>
0389 Due restrictions of subversion itself only folders, not single files, may imported.
0390 </para>
0391 <sect3>
0392 <title>With drag and drop</title>
0393 <para>
0394 Mark in any compatible file manager the folder you want to import and drag it to the folder entry in &kdesvn; where you want to import it.
0395 </para>
0396 </sect3>
0397 <sect3>
0398 <title>Select folder to import with directory-browser</title>
0399 <para>
0400 Mark the folder where you want to import a new folder. Then select
0401 <menuchoice>
0402 <guimenu>Subversion</guimenu>
0403 <guisubmenu>General</guisubmenu>
0404 <guimenuitem>Import folders into current</guimenuitem>
0405 </menuchoice> and select your wanted folder.
0406 </para>
0407 </sect3>
0408 </sect2>
0409 </sect1>
0410 <sect1 id="operations">
0411 <title>Other Operations</title>
0412 <sect2 id="merging-items">
0413 <title>Merge</title>
0414 <para>
0415 Open repository or working copy, mark item you want to merge and select
0416 <menuchoice>
0417 <guimenu>Subversion</guimenu>
0418 <guisubmenu>General</guisubmenu>
0419 <guisubmenu>Merge</guisubmenu>
0420 </menuchoice>.
0421   Enter in the following dialog the values wanted. If opened from repository, source 1 and source 2 are filled, when open from within working copy, target is filled with current selected item. The handling of this parameter is a little bit different between using the internal diff of subversion or an external merge-program like &kdiff3;. The target must ALWAYS a local folder or file. You may switch between external or internal merge with the check box <guilabel>Use external merge</guilabel>.
0422 </para>
0423 <sect3>
0424 <title>Internal merge</title>
0425 <para>
0426 The meaning is exactly like from within subversion's own command line tool. When source1 and source2 are equal, start and endrevision must different. If sources aren't equal, start-revision is assigned to source1 and end-revision to source2. The target MUST be a working copy otherwise subversion will send an error message.
0427 </para>
0428 <para>
0429 The check boxes have following meanings:
0430 <variablelist>
0431 
0432 <varlistentry>
0433 <term>Recursive</term>
0434 <listitem><para>
0435 Do all operations recursive when working with folders.
0436 </para></listitem>
0437 </varlistentry>
0438 
0439 <varlistentry>
0440 <term>Handle unrelated as related items</term>
0441 <listitem><para>
0442 If set, unrelated items will be diffed as if they were related. Otherwise subversion will remove one side and add it on other side again.
0443 </para></listitem>
0444 </varlistentry>
0445 
0446 <varlistentry>
0447 <term>Force delete on modified/unversioned items</term>
0448 <listitem><para>
0449 If not set and merge would require deletion of an modified or unversioned item the subversion merge fails. Otherwise this items will be deleted.
0450 </para></listitem>
0451 </varlistentry>
0452 
0453 <varlistentry>
0454 <term>Just dry run without modifications</term>
0455 <listitem><para>
0456 If set, subversion sends only notifications what it would do but doesn't modify the working copy.
0457 </para></listitem>
0458 </varlistentry>
0459 </variablelist>
0460 
0461 </para>
0462 </sect3>
0463 <sect3>
0464 <title>Using external program for merge</title>
0465 <para>
0466 See <xref linkend="diffmerge-settings"/> for details how to setup the external merge tool. &kdesvn; generates the command line as described there. Before it does following:
0467 </para>
0468 <para>
0469 <orderedlist>
0470 
0471 <listitem><para>
0472 Assign start-revision as revision to source 1 and end-revision to source 2. Then checks if them are different (path and/or revision). If yes, it is a three-way merge otherwise a simple merge from source to target. If source 2 is left empty it is a simple merge, too.
0473 </para></listitem>
0474 
0475 <listitem><para>
0476 Make an export into temporary folder. If it is a simple merge only source 1 at start-revision, otherwise both sources with their revisions. If item is a file and not a folder then get the content at a specific revision.
0477 </para></listitem>
0478 
0479 <listitem>
0480 <para>
0481   Generate the call to your external merge program as you setup in <link linkend="diffmerge-settings">Settings</link>. The error output will displayed in log window so you may see what is going wrong (if something is gone wrong).
0482 </para>
0483 </listitem>
0484 </orderedlist>
0485 
0486 In difference to internal merge target may a flat folder/file not under version control because external tools do not care about it.
0487 </para>
0488 <para>
0489 If recursive is not set, the export is done as a flat export. Be care: when doing this with working copies externals will <emphasis>not</emphasis> be exported.
0490 </para>
0491 </sect3>
0492 </sect2>
0493 
0494 <sect2 id="op-resolve">
0495 <title>Resolving conflicts</title>
0496 <para>
0497 &kdesvn; itself hasn't a module for resolving conflicts but you may use external software from within &kdesvn;. In <xref linkend="extern-resolve-setup"/> is a description how to setup up this application.
0498 </para>
0499 <para>
0500   When marking an item with status set to <quote>conflicted</quote> (you'll see a red cross in listview on such items) you may select
0501 <menuchoice>
0502 <guimenu>Subversion</guimenu>
0503 <guisubmenu>Working copy</guisubmenu>
0504 <guisubmenu>Resolve conflict</guisubmenu>
0505 </menuchoice>.
0506 or from within context menu <guimenuitem>Resolve conflict</guimenuitem> (only on conflicted items)
0507 &kdesvn; now starts the program you setup (or the default one). After finish this job you should mark item as resolved
0508 (<menuchoice><guimenu>Subversion</guimenu><guisubmenu>Working copy</guisubmenu><guisubmenu>Mark resolved</guisubmenu></menuchoice>) otherwise you will not able to commit your changes.
0509 </para>
0510 </sect2>
0511 
0512 </sect1>
0513 
0514 <sect1 id="used-properties">
0515 <title>Properties used by &kdesvn; for configuration</title>
0516 <sect2>
0517 <title>Bugtracker integration</title>
0518 <para>The <ulink url="http://tortoisesvn.tigris.org/">TortoiseSVN project</ulink> designed a nice property system
0519 <ulink url="http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-bugtracker.html"> for integrating bugtracker</ulink> into
0520 subversion GUI. The current version of &kdesvn; does not support extra fields in commit box (will follow later) and doesn't understand all but following properties:
0521 </para>
0522 <para>
0523 <table id="bugtracker-properties">
0524 <title>Bugtracker Integration Properties</title>
0525 <tgroup cols="3">
0526 
0527 <thead>
0528 <row>
0529 <entry>Property</entry>
0530 <entry>Description</entry>
0531 <entry>Example</entry>
0532 </row>
0533 </thead>
0534 <tbody>
0535 <row>
0536 <entry><literal>bugtraq:url</literal></entry>
0537 <entry>Holds the &URL; to bugtracker. It has to contain the <literal>%BUGID%</literal> marker.</entry>
0538 <entry>https://bugs.kde.org/show_bug.cgi?id=%BUGID%</entry>
0539 </row>
0540 
0541 <row>
0542 <entry><literal>bugtraq:logregex</literal></entry>
0543 <entry>
0544 <para>Contains one or two regular expressions, separated by a newline.</para>
0545 <para>If only one expression is set, then the bare bug ID's must be matched in the groups of the regex string. If two expressions are set, then the first expression is used to find a string which relates to the bug ID but may contain more than just the bug ID (&eg; <quote>Issue #123</quote> or <quote>resolves issue 123</quote>). The second expression is then used to extract the bare bug ID from the string extracted with the first expression.</para>
0546 <para>Please keep care about not wanted spaces after the regular expression and don't forget the brackets around the number description.</para>
0547 </entry>
0548 <entry>
0549 <para>
0550   Single (usable with TRAC):
0551 </para>
0552 <programlisting>
0553 #(\d+)
0554 </programlisting>
0555 <para>
0556   Now all numbers like <replaceable>#190</replaceable> will parsed and translated to an &URL; in log output.
0557 </para>
0558 <para>
0559 Two expressions:
0560 </para>
0561 <programlisting>
0562 [Ii]ssue #?(\d+)(,? ?#(\d+))*
0563 (\d+)
0564 </programlisting>
0565 <important>
0566   <title>Remember</title>
0567   <para>
0568     Keep care of white spaces after the <literal>(\d+)</literal>! This is one of the most common errors causing these expressions do not match!
0569   </para>
0570 </important>
0571 </entry>
0572 </row>
0573 </tbody>
0574 </tgroup>
0575 </table>
0576 </para>
0577 <para>
0578 On local opened repositories (&ie; <filename class="directory">file://</filename> protocol) and on working copies these properties will searched upward from opened folder until found or the subversion top level is reached. On repositories opened via network (all except <filename class="directory">file://</filename> protocol) it is only searched on opened folder itself.
0579 </para>
0580 <para>
0581 Support for multiple sets of these properties may follow later, (&eg;, in subfolder extra values for other tracker &etc;) but in most cases evaluating single tracker links should be enough.
0582 </para>
0583 </sect2>
0584 </sect1>
0585 
0586 <sect1 id="revision-tree">
0587 <title>The revision tree</title>
0588 <para>
0589 The revision tree try to display the whole history of an item so user may get a better feeling about the history of an item. It has to scan the complete log of the repository 'cause it requires some information subversion does not (and I think will not) give. Because this produces a lot of traffic the revision tree uses always the internal <link linkend="logcache-descr">log cache</link>.
0590 </para>
0591 <sect2>
0592 <title>Requirements</title>
0593 <para>
0594 The revision tree is generated via <application>dot</application>. So for a working revision tree the <application>graphviz</application> package must installed.
0595 </para>
0596 </sect2>
0597 </sect1>
0598 
0599 <sect1 id="logcache-descr">
0600 <title>Internal log cache</title>
0601 <para>
0602   &kdesvn; may use an internal log cache for some operations. Mostly it is used for <link linkend="revision-tree">the revision tree</link> but when viewing simplified log in offline mode, too. The caches are organized as <application>SQLite</application> databases stored in <filename class="directory">$HOME/.sqvnqt/logcache</filename>. Every numbered file is a storage for a different repository.
0603 </para>
0604 <warning>
0605   <para>
0606     The databases may get large! So you may disable automatic update of log cache in settings.
0607   </para>
0608 </warning>
0609 <para>
0610   You may simply remove a database, than no cached log will be given back for that repository (and no revision tree!) but when you do not disable automatic filling the cache on next open this repository or an associated working copy of it the cache will be refilled again.
0611 </para>
0612 <sect2>
0613 <title>Offline mode</title>
0614 <para>&kdesvn; may work without network access, &ie; you can switch off the network access for &kdesvn;. This may be useful when working without network like on notebooks. In such cases &kdesvn; always gets the logs from the internal cache. This log is reduced to base functions due to technical reasons, so the cached log may (but not must) differ from real log. Differ means that it will not display all copy operations even <guilabel>Log follows node changes</guilabel> is set.</para>
0615 </sect2>
0616 <sect2>
0617 <title>Log cache and revision tree</title>
0618 <para>
0619   The revision tree will only use the log cache because otherwise it must get always the logs again. It will <emphasis>not</emphasis> refresh the log cache (but this may changed in later releases).
0620 </para>
0621 </sect2>
0622 </sect1>
0623 
0624 <sect1 id="overlay-meaning">
0625 <title>Meaning of icon overlays</title>
0626 <para>
0627   Entries may be marked with overlayed icons when not in <quote>normal</quote> state.
0628 <variablelist>
0629 
0630 <varlistentry>
0631 <term><inlinemediaobject>
0632 <imageobject>
0633 <imagedata fileref="hi128-filesys-kdesvnlocked.png" format="PNG" />
0634 </imageobject>
0635 <textobject>
0636 <phrase>Locked</phrase>
0637 </textobject>
0638 </inlinemediaobject>
0639 </term>
0640 <listitem><para>
0641 This entry is locked. In last column the owner of lock is listed. You may setup if &kdesvn; should check for locked items in repository, too. But be careful: depending of the kind of the server this may take a long time!
0642 </para></listitem>
0643 </varlistentry>
0644 
0645 <varlistentry>
0646 <term><inlinemediaobject>
0647 <imageobject>
0648 <imagedata fileref="hi128-filesys-kdesvnneedlock.png" format="PNG" />
0649 </imageobject>
0650 <textobject>
0651 <phrase>Needs locked</phrase>
0652 </textobject>
0653 </inlinemediaobject>
0654 </term>
0655 <listitem><para>
0656 This entry must be locked before edit and commit. Until you'll not set a lock subversion keeps it read-only.
0657 </para></listitem>
0658 </varlistentry>
0659 
0660 <varlistentry>
0661 <term><inlinemediaobject>
0662 <imageobject>
0663 <imagedata fileref="hi128-filesys-kdesvnupdates.png" format="PNG" />
0664 </imageobject>
0665 <textobject>
0666 <phrase>Updates</phrase>
0667 </textobject>
0668 </inlinemediaobject>
0669 </term>
0670 <listitem><para>
0671 This entry or - if a folder - an entry below has newer version in repository.
0672 </para></listitem>
0673 </varlistentry>
0674 
0675 
0676 <varlistentry>
0677 <term><inlinemediaobject>
0678 <imageobject>
0679 <imagedata fileref="hi128-filesys-kdesvnmodified.png" format="PNG" />
0680 </imageobject>
0681 <textobject>
0682 <phrase>Modified</phrase>
0683 </textobject>
0684 </inlinemediaobject>
0685 </term>
0686 <listitem><para>
0687 This entry or - if a folder - an entry below was changed on local disc.
0688 </para></listitem>
0689 </varlistentry>
0690 
0691 <varlistentry>
0692 <term><inlinemediaobject>
0693 <imageobject>
0694 <imagedata fileref="hi128-filesys-kdesvnadded.png" format="PNG" />
0695 </imageobject>
0696 <textobject>
0697 <phrase>overlay added</phrase>
0698 </textobject>
0699 </inlinemediaobject>
0700 </term>
0701 <listitem><para>
0702 This entry is locally added to subversion but not yet committed.
0703 </para></listitem>
0704 </varlistentry>
0705 
0706 <varlistentry>
0707 <term><inlinemediaobject>
0708 <imageobject>
0709 <imagedata fileref="hi128-filesys-kdesvndeleted.png" format="PNG" />
0710 </imageobject>
0711 <textobject>
0712 <phrase>overlay deleted</phrase>
0713 </textobject>
0714 </inlinemediaobject>
0715 </term>
0716 <listitem><para>
0717 This entry is locally deleted from subversion but hasn't yet been committed.
0718 </para></listitem>
0719 </varlistentry>
0720 
0721 <varlistentry>
0722 <term><inlinemediaobject>
0723 <imageobject>
0724 <imagedata fileref="hi128-filesys-kdesvnconflicted.png" format="PNG" />
0725 </imageobject>
0726 <textobject>
0727 <phrase>overlay deleted</phrase>
0728 </textobject>
0729 </inlinemediaobject>
0730 </term>
0731 <listitem><para>
0732 This entry (or entry below if folder) got conflicts to resolve with last update.
0733 </para></listitem>
0734 </varlistentry>
0735 
0736 </variablelist>
0737 
0738 </para>
0739 </sect1>
0740 
0741 <sect1 id="kdesvn-passwords">
0742 <title>&kdesvn; and passwords</title>
0743 <para>
0744 &kdesvn;/subversion is able to save passwords. Saving passwords is always a security risk, but may let a graphical frontend more usable.
0745 </para>
0746 <sect2>
0747 <title>Not saving passwords</title>
0748 <para>
0749   Most secure way, but sometimes unhandy with GUIs like &kdesvn;. In particular the background processes of &kdesvn; would always ask for a password in case the repository has restricted access for reading operations like update and status. The same for <quote>commit</quote> and so on. So if you are not saving passwords you should disable <guilabel>Start check for updates when open a working copy</guilabel> and <link linkend="subversion-settings">so on</link>.
0750 </para>
0751 </sect2>
0752 <sect2>
0753 <title>Saving passwords in &kwallet5;</title>
0754 <para>
0755   Secured password storage used by a lot of &kde; programs like &kmail; and &konqueror;. If you are saving passwords and mostly using &kdesvn; you should use this. Keep care that the encrypted storage isn't a high-secure storage. Details see <ulink url="help:/kwallet5">&kwallet5; documentation</ulink>.
0756 </para>
0757 </sect2>
0758 <sect2>
0759 <title>Saving to subversion's own password storage</title>
0760 <para>
0761   This is not recommended 'cause the passwords are stored as clear text! Not believing? Take a look into the files in <filename class="directory">~/.subversion/auth/svn.simple</filename>. You should only use this if you are frequently using other clients than &kdesvn; like <application>rapidsvn</application> or <application>esvn</application> or the original <application>svn</application> command line client. If you're using the command line client mostly for checkouts or updates which do not require a password and &kdesvn; for commit/move/copy you should use &kwallet5; instead.
0762 </para>
0763 </sect2>
0764 <sect2>
0765 <title>Internal password cache</title>
0766 <para>
0767 You may activate an internal password cache which will hold passwords as long &kdesvn; is running in memory. So you must not enter a password twice even if you didn't save it in wallet.
0768 </para>
0769 </sect2>
0770 <sect2>
0771 <title>Special case svn+ssh</title>
0772 <para>
0773 When using subversion via svn+ssh password storage may done via ssh and ssh-agent. For this you must have ssh access to the remote machine and repository. When want to store something you should use the public key authentication of ssh, not the password authentication. (In fact ssh prefer the public key authentication). For this you must put your public ssh-key on the target, &eg;, the repository system. SSH passwords will never be handled by subversion passwords storage or &kwallet5; or internal password cache.
0774 </para>
0775 <para>
0776 If you don't want asked for the password of your SSH key you can use the <application>ssh-agent</application>, with selecting the menu
0777 <menuchoice><guimenu>
0778 Subversion
0779 </guimenu>
0780 <guimenuitem>Add ssh identities to ssh-agent</guimenuitem></menuchoice>
0781 you may store your SSH-key password for your current session so no further entering of your password is needed.
0782 </para>
0783 </sect2>
0784 </sect1>
0785 </chapter>
0786 
0787 <chapter id="kdesvn-kio">
0788 <title>&konqueror;, KIO, &kdesvn;</title>
0789 <sect1 id="kdesvn-kio-desc">
0790 <title>Description</title>
0791 <para>
0792 As of version 0.7.0 of &kdesvn; it comes with some modules integrating some commands directly into &konqueror; menus.
0793 <variablelist>
0794 <varlistentry>
0795 <term>KIO protocols</term>
0796 <listitem><para>Implements handlers for the following protocols:</para>
0797 <itemizedlist>
0798 <listitem><para>ksvn+http</para></listitem>
0799 <listitem><para>ksvn+https</para></listitem>
0800 <listitem><para>ksvn+file</para></listitem>
0801 <listitem><para>ksvn+ssh</para></listitem>
0802 <listitem><para>ksvn</para></listitem>
0803 </itemizedlist>
0804 
0805 <para>
0806 These protocols are designed only for repositories, not for working copies. For example, <filename class="directory">ksvn+file:///<replaceable>path</replaceable></filename> must point to the beginning of a repository different to the application itself or KPart.
0807 Working copies may browsed with &konqueror;.
0808 </para>
0809 <para>
0810 For browsing at a specific revision you may append the query <link linkend="revision-syntax"><quote>?rev=<replaceable>revision</replaceable></quote></link> to the &URL;.
0811 </para>
0812 </listitem>
0813 </varlistentry>
0814 <varlistentry>
0815 <term>Context menus</term>
0816 <listitem><para>
0817 &kdesvn; installs context menus for &konqueror;. Them may be seen with right mouse click in the browser window (only in standard view, not any KPart) so it is possible to do most used actions direct from within &konqueror; (or any other file managers that read &konqueror; context menus like &dolphin;). This is done via a call
0818 to the <link linkend="kdesvn-commandline">command line variant of &kdesvn;</link>.
0819 </para>
0820 </listitem>
0821 </varlistentry>
0822 </variablelist>
0823 </para>
0824 <sect2>
0825 <title>Usage of KIO outside &konqueror; - an example</title>
0826 <para>
0827 Every application which uses the KIO library may use these protocols. So it would be possible to retrieve all differences between two revisions with &kdiff3; without any deep knowledge.
0828 </para>
0829 <para>
0830 <example>
0831 <title>Retrieving differences between revisions using &kdiff3; and KIO::ksvn</title>
0832 <programlisting>
0833 kdiff3 \
0834   ksvn://anonsvn.kde.org/home/kde/trunk/KDE/arts?rev=423127 \
0835   ksvn://anonsvn.kde.org/home/kde/trunk/KDE/arts?rev=455064
0836 </programlisting>
0837 <para>
0838   Let &kdiff3; print all differences between two revisions.
0839 </para>
0840 <para>
0841 <note>
0842   <para>
0843     Using this within &kdesvn; (diff'ing two revisions) is MUCH faster because the internal mechanisms of subversion are used.
0844   </para>
0845 </note>
0846 </para>
0847 </example>
0848 </para>
0849 </sect2>
0850 </sect1>
0851 <sect1 id="kio-svn-special">
0852 <title>Programmers information about KIO::ksvn</title>
0853 <note><para>You may skip this if not interested in KIO programming.</para></note>
0854 <para>
0855 KIO::ksvn::special knows the following operations.
0856 </para>
0857 <sect2>
0858 <title>Command list</title>
0859 <para>
0860 <table id="kio-svn-special-commands">
0861   <title>Command overview for <literal>KIO::ksvn::special</literal></title>
0862 <tgroup cols="4">
0863 
0864 <thead>
0865 <row>
0866 <entry>Command name</entry>
0867 <entry>Numeric id</entry>
0868 <entry>Parameter list</entry>
0869 <entry>Implemented in the current version?</entry>
0870 </row>
0871 </thead>
0872 
0873 <tbody>
0874 
0875 <row>
0876 <entry>Checkout</entry>
0877 <entry>1</entry>
0878 <entry>
0879 <para>
0880 KURL repository, KURL target, int revnumber, QString revkind
0881 </para>
0882 <para>
0883 The target will <emphasis>not</emphasis> be modified, &eg;, but the content will be checked out without creating a subfolder! For example, the source may be
0884 <filename>http://server/repos/project/trunk</filename>, target <filename>/home/user/proj/</filename> then the contents of trunk will copied into <filename>/home/user/proj/</filename> not
0885 <filename>/home/user/proj/trunk/</filename>!
0886 </para>
0887 </entry>
0888 <entry>Yes</entry>
0889 </row>
0890 
0891 <row>
0892 <entry>Update</entry>
0893 <entry>2</entry>
0894 <entry><para>KURL url, int revnum, QString revstring</para>
0895 <para>
0896 If revnum &lt; 0 the revstring is parsed.
0897 Format of revstring is described in <link linkend="revision-syntax">Appendix</link>.
0898 </para>
0899 </entry>
0900 <entry>Yes</entry>
0901 </row>
0902 
0903 <row>
0904 <entry>Commit</entry>
0905 <entry>3</entry>
0906 <entry><para>KURL::List urls</para>
0907 <para>urls is a list of local urls to commit. Will ask for log message.</para>
0908 </entry>
0909 <entry>Yes</entry>
0910 </row>
0911 
0912 <row>
0913 <entry>Log</entry>
0914 <entry>4</entry>
0915 <entry>
0916 <para>
0917 int startrevnumber, QString startrevstring, int endrevnumber, QString endrevstring, KURL::List
0918 </para>
0919 <para>
0920 Use this with care - this may produce a lot of data.
0921 </para>
0922 </entry>
0923 <entry>Yes</entry>
0924 </row>
0925 
0926 <row>
0927 <entry>Import</entry>
0928 <entry>5</entry>
0929 <entry>KURL targetrepository, KURL sourcepath</entry>
0930 <entry>Yes</entry>
0931 </row>
0932 
0933 <row>
0934 <entry>Add</entry>
0935 <entry>6</entry>
0936 <entry>KURL</entry>
0937 <entry>Yes</entry>
0938 </row>
0939 
0940 <row>
0941 <entry>Del</entry>
0942 <entry>7</entry>
0943 <entry>KURL::List</entry>
0944 <entry>Yes</entry>
0945 </row>
0946 
0947 <row>
0948 <entry>Revert</entry>
0949 <entry>8</entry>
0950 <entry><para>KURL::List</para>
0951 <para>Revert in KIO is always non-recursive, no questions (calling app must do it itself)</para>
0952 </entry>
0953 <entry>Yes</entry>
0954 </row>
0955 
0956 <row>
0957 <entry>Status</entry>
0958 <entry>9</entry>
0959 <entry><para>KURL item, bool checkRepos, bool recurse</para>
0960 <para>item - the item whos info should be checked, checkRepos - check if there are newer versions in the repository, recurse - whether to check recursive or not.</para>
0961 </entry>
0962 <entry>Yes</entry>
0963 </row>
0964 
0965 <row>
0966 <entry>Mkdir</entry>
0967 <entry>10</entry>
0968 <entry>KURL::List</entry>
0969 <entry>Yes</entry>
0970 </row>
0971 
0972 <row>
0973 <entry>Resolve</entry>
0974 <entry>11</entry>
0975 <entry>KURL, bool recursive</entry>
0976 <entry>Yes</entry>
0977 </row>
0978 
0979 <row>
0980 <entry>Switch</entry>
0981 <entry>12</entry>
0982 <entry>KURL working_copy_path, KURL new_repository_url, bool recursive,int revnumber, QString revkind</entry>
0983 <entry>Yes</entry>
0984 </row>
0985 
0986 <row>
0987 <entry>Diff</entry>
0988 <entry>13</entry>
0989 <entry>
0990 <para>URL uri1, KURL uri2, int r1, QString rstring1, int r2, QString rstring 2, bool recursive</para>
0991 <para>For difference between repository file:/// and working copy setup working copy urls without a protocol!</para>
0992 </entry>
0993 <entry>Yes</entry>
0994 </row>
0995 </tbody>
0996 
0997 </tgroup>
0998 </table>
0999 
1000 </para>
1001 </sect2>
1002 <sect2>
1003 <title>Return values</title>
1004 <para>
1005 Return values may be given via metadata, see apidoc for details.
1006 </para>
1007 <para>
1008 <table id="kio-ksvn-metadata">
1009 <title>Content of metadata</title>
1010 <tgroup cols="2">
1011 
1012 <thead>
1013 <row>
1014 <entry>Key</entry>
1015 <entry>Possible value</entry>
1016 </row>
1017 </thead>
1018 
1019 <tbody>
1020 
1021 <row>
1022 <entry>path</entry>
1023 <entry>Path of the item action was made on, &eg; given url</entry>
1024 </row>
1025 
1026 <row>
1027 <entry>action</entry>
1028 <entry>Numeric action type</entry>
1029 </row>
1030 
1031 <row>
1032 <entry>kind</entry>
1033 <entry>kind of item (mostly folder or file)</entry>
1034 </row>
1035 
1036 <row>
1037 <entry>mime_t</entry>
1038 <entry>Subversion mimetype of item</entry>
1039 </row>
1040 
1041 <row>
1042 <entry>content</entry>
1043 <entry>State of content (subversion value)</entry>
1044 </row>
1045 
1046 <row>
1047 <entry>prop</entry>
1048 <entry>State of properties (subversion value)</entry>
1049 </row>
1050 
1051 <row>
1052 <entry>rev</entry>
1053 <entry>Resulting revision or revision worked on</entry>
1054 </row>
1055 
1056 <row>
1057 <entry>string</entry>
1058 <entry>Internal defined human readable message.</entry>
1059 </row>
1060 
1061 <row>
1062 <entry>loggedaction</entry>
1063 <entry>Subversion defined action string on item (A,M,D)</entry>
1064 </row>
1065 <row>
1066 <entry>loggedcopyfrompath</entry>
1067 <entry>If copied from which path? (may be empty)</entry>
1068 </row>
1069 <row>
1070 <entry>loggedcopyfromrevision</entry>
1071 <entry>If copied at which revision? (may be &lt; 0)</entry>
1072 </row>
1073 <row>
1074 <entry>loggedpath</entry>
1075 <entry>On which single path the entries logged action and so on are set. (path is set to the calling url)</entry>
1076 </row>
1077 <row>
1078 <entry>diffresult</entry>
1079 <entry>a line of difference output</entry>
1080 </row>
1081 </tbody>
1082 
1083 </tgroup>
1084 </table>
1085 
1086 </para>
1087 </sect2>
1088 </sect1>
1089 </chapter>
1090 
1091 <chapter id="kdesvn-commandline">
1092 <title>Using &kdesvn; via command line</title>
1093 <sect1 id="kdesvn-commandline-overview">
1094 <title>Overview</title>
1095 <para>
1096   Some subversion operations may be used via the command line, &eg;, like a standard command line client but user interaction is made through the <acronym>UI</acronym>. The standard syntax is <userinput>kdesvn exec <replaceable>command</replaceable> <replaceable>parameter</replaceable> <replaceable>url</replaceable></userinput>.
1097 </para>
1098 <para>
1099 If a single revision on a single &URL; is wanted it may be set as a parameter of the &URL;
1100 <programlisting>svn://your-server/path-to-repository/item?rev=&lt;your-rev&gt;</programlisting> This will overwrite the option <option>-r &lt;rev&gt;</option>.
1101 </para>
1102 <para>
1103 A revision may be given as
1104 a number or one of <option>HEAD</option> or <option>BASE</option> or as date format like {YYYY-MM-DD}.
1105 </para>
1106 </sect1>
1107 <sect1 id="kdesvn-command-list">
1108 <title>Command list</title>
1109 <para>
1110   If in following overview as possible parameter <option>-r <replaceable>revision</replaceable></option> is given, this revision may be set as <userinput><replaceable>url</replaceable>?rev=<replaceable>the-revision</replaceable></userinput>.
1111 <table id="svn-commands-table">
1112 <title>Subversion commands</title>
1113 <tgroup cols="3">
1114 
1115 <thead>
1116 <row>
1117 <entry>Command</entry>
1118 <entry>Meaning</entry>
1119 <entry>Accepted options</entry>
1120 </row>
1121 </thead>
1122 
1123 <tbody>
1124 <row>
1125 <entry>commit (or ci)</entry>
1126 <entry>commit changes of item to repository</entry>
1127 <entry></entry>
1128 </row>
1129 <row>
1130 <entry>log</entry>
1131 <entry>Print log of item</entry>
1132 <entry>-r startrevision:endrevision -l limit_display</entry>
1133 </row>
1134 <row>
1135 <entry>cat</entry>
1136 <entry>Display content of item</entry>
1137 <entry>-r revision </entry>
1138 </row>
1139 <row>
1140 <entry>copy (or cp)</entry>
1141 <entry>Copy item inside working copy or repository. If target isn't given, &kdesvn; will prompt.</entry>
1142 <entry></entry>
1143 </row>
1144 <row>
1145 <entry>move (or mv, rename)</entry>
1146 <entry>Move/Rename item inside working copy or repository. If target isn't given, &kdesvn; will prompt.</entry>
1147 <entry></entry>
1148 </row>
1149 <row>
1150 <entry>get</entry>
1151 <entry>Get content of item and save it</entry>
1152 <entry>-r revision -o &lt;outputfile&gt; (output is required!)</entry>
1153 </row>
1154 <row>
1155 <entry>blame (or annotate)</entry>
1156 <entry>annotate file</entry>
1157 <entry>-r startrevision:endrevision</entry>
1158 </row>
1159 <row>
1160 <entry>update</entry>
1161 <entry>Update item in working copy</entry>
1162 <entry>-r revision</entry>
1163 </row>
1164 <row>
1165 <entry>diff</entry>
1166 <entry>Diff two revisions of item or diff two items at specific revision</entry>
1167 <entry>-r startrev:endrev</entry>
1168 </row>
1169 <row>
1170 <entry>info</entry>
1171 <entry>Detailed information about the item</entry>
1172 <entry>-r revision</entry>
1173 </row>
1174 <row>
1175 <entry>checkout (or co)</entry>
1176 <entry>Checkout repository-path into a new working copy path. Target path and source revision will be asked for.</entry>
1177 <entry></entry>
1178 </row>
1179 <row>
1180 <entry>checkoutto (or coto)</entry>
1181 <entry>Checkout repository-path into a new working copy path. The difference of the source path and source revision will be asked for.</entry>
1182 <entry></entry>
1183 </row>
1184 <row>
1185 <entry>export</entry>
1186 <entry>Export repository- or working copy-path into directory. Target path and source revision will be asked for.</entry>
1187 <entry></entry>
1188 </row>
1189 <row>
1190 <entry>exportto</entry>
1191 <entry>Export repository- or working copy-path into directory. Source path and source revision will be asked for.</entry>
1192 <entry></entry>
1193 </row>
1194 <row>
1195 <entry>delete (del, remove, rm)</entry>
1196 <entry>delete url(s) from repository or working copy.</entry>
1197 <entry></entry>
1198 </row>
1199 <row>
1200 <entry>add</entry>
1201 <entry>add &URL; to working copy. &URL; must belong to a working copy (its not an import!)</entry>
1202 <entry></entry>
1203 </row>
1204 <row>
1205 <entry>revert (or undo)</entry>
1206 <entry>undone current changes to working copy. May only used on working copy urls!</entry>
1207 <entry></entry>
1208 </row>
1209 <row>
1210 <entry>checknew (or addnew)</entry>
1211 <entry>check in given &URL; for new, unversioned items and add them to working copy if wanted.</entry>
1212 <entry></entry>
1213 </row>
1214 <row>
1215 <entry>tree</entry>
1216 <entry>displays revision tree of item (only first argument), if &URL; with <quote>?rev=<replaceable>xxx</replaceable></quote> given, this revision is the peg-revision.</entry>
1217 <entry>-r startrev:endrev</entry>
1218 </row>
1219 <row>
1220 <entry>lock</entry>
1221 <entry>lock url(s), if <option>-f</option> is given then existing locks are broken.</entry>
1222 <entry>-f</entry>
1223 </row>
1224 <row>
1225 <entry>unlock</entry>
1226 <entry>unlock url(s), if <option>-f</option> is given then not owned locks are broken or non
1227  existing locks are ignored.</entry>
1228 <entry>-f</entry>
1229 </row>
1230 <row>
1231 <entry>help</entry>
1232 <entry>displays this page</entry>
1233 <entry></entry>
1234 </row>
1235 </tbody>
1236 </tgroup>
1237 
1238 </table>
1239 
1240 <table id="parameter-list">
1241 <title>Parameter for subversion commands</title>
1242 <tgroup cols="3">
1243 <thead>
1244 <row>
1245 <entry>Parameter</entry>
1246 <entry>Possible values</entry>
1247 <entry>allowed for</entry>
1248 </row>
1249 </thead>
1250 <tbody>
1251 <row>
1252   <entry><option>-r</option></entry>
1253 <entry><replaceable>revision</replaceable> or <replaceable>startrev:endrev</replaceable></entry>
1254 <entry>all except commit</entry>
1255 </row>
1256 <row>
1257   <entry><option>-R</option></entry>
1258 <entry>(none)</entry>
1259 <entry>all except commit</entry>
1260 </row>
1261 <row>
1262 <entry><option>-o</option></entry>
1263 <entry><replaceable>filename</replaceable></entry>
1264 <entry>get</entry>
1265 </row>
1266 <row>
1267 <entry><option>-l</option></entry>
1268 <entry><replaceable>number</replaceable></entry>
1269 <entry>log</entry>
1270 </row>
1271 <row>
1272 <entry><option>-f</option></entry>
1273 <entry>(none)</entry>
1274 <entry>(un-)lock</entry>
1275 </row>
1276 
1277 </tbody>
1278 </tgroup>
1279 </table>
1280 
1281 </para>
1282 <sect2>
1283   <title>The <quote>log</quote> command</title>
1284 <para>
1285 Log command displays a dialog containing the log of the given &URL;. With subversion 1.2 or above it accepts a limit, &ie; how many entries it has to display.
1286 </para>
1287 <para>
1288 Inside that dialog you may select log entries and get the differences between them.
1289 <example>
1290 <title>Display the last 20 commit logs</title>
1291 <programlisting>
1292 kdesvn exec log -l 20 -r HEAD&#058;1 myfile.c
1293 </programlisting>
1294 <para>Beware of order of revision: You want go from HEAD to START for the LAST one. So you must give revision HEAD as starting point, otherwise you would get
1295 the first 20 entries.</para>
1296 </example>
1297 </para>
1298 </sect2>
1299 <sect2>
1300   <title>The <quote>diff</quote> command</title>
1301 <para>
1302 You get differences between revisions of an item or between two items inside same working copy or repository. When diff'ing revisions of an item, revisions may be given as <option>-r <replaceable>STARTREV</replaceable>:<replaceable>ENDREV</replaceable></option>. When diffing an item inside a working copy without any revisions it prints the diff against repository.
1303 <example>
1304 <title>Print difference against repository, &ie; local changes</title>
1305 <programlisting>
1306 kdesvn exec diff myfile.c
1307 </programlisting>
1308 </example>
1309 <example>
1310 <title>Print difference between revisions</title>
1311 <programlisting>
1312 kdesvn exec diff -r 21:20 myfile.c
1313 </programlisting>
1314 </example>
1315 </para>
1316 <para>
1317 When diffing two items revisions may be appended to &URL; of items. &eg;:
1318 <programlisting>http://server/path/item?rev=HEAD</programlisting>
1319 <example>
1320 <title>Diffing two tagged versions</title>
1321 <programlisting>
1322 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
1323 </programlisting>
1324 </example>
1325 </para>
1326 </sect2>
1327 </sect1>
1328 </chapter>
1329 
1330 <chapter id="setup">
1331 <title>Settings</title>
1332 <para>
1333 Settings can be changed from the setup dialog. They are separated into some subdialogs.
1334 </para>
1335 <sect1 id="general-settings">
1336 <title>General</title>
1337 <para>
1338 <informaltable id="General-setup-items">
1339 <tgroup cols="2">
1340 <tbody>
1341 <row>
1342 <entry>Size of listviewicons</entry>
1343 <entry>How big (square) the icons in main list view should be</entry>
1344 </row>
1345 <row>
1346 <entry>Show file info</entry>
1347 <entry>If a small tooltip should appear when moving mouse over an item</entry>
1348 </row>
1349 <row>
1350 <entry>Mark item status with icon overlay</entry>
1351 <entry>When an item isn't in normal subversion state it may get an overlay. (See <xref linkend="overlay-meaning" />)</entry>
1352 </row>
1353 <row>
1354 <entry>Items sorting order is case sensitive</entry>
1355 <entry>If the sort order in main window is case sensitive or not, &ie; if <quote>a</quote> not equal to <quote>A</quote>.</entry>
1356 </row>
1357 <row>
1358 <entry>Display ignored files</entry>
1359 <entry>Show items marked in subversion for ignore or not.</entry>
1360 </row>
1361 <row>
1362 <entry>Maximum log messages in history</entry>
1363 <entry>How many log messages &kdesvn; should remember.</entry>
1364 </row>
1365 <row>
1366 <entry>Display colored annotate</entry>
1367 <entry>Use colors defined in the settings dialog for annotations.</entry>
1368 </row>
1369 <row>
1370 <entry>Use navigation panel</entry>
1371 <entry>Toggle the display of the repository tree view.</entry>
1372 </row>
1373 </tbody>
1374 </tgroup>
1375 </informaltable>
1376 
1377 </para>
1378 </sect1>
1379 
1380 <sect1 id="subversion-timedjobs-settings">
1381 <title>Subversion and timed jobs settings</title>
1382 
1383 <table id="subversion-settings">
1384 <title>Subversion</title>
1385 <tgroup cols="2">
1386 
1387 <tbody>
1388 
1389 <row>
1390 <entry>Start check for updates when open a working copy</entry>
1391 <entry>When open a working copy start a check for updates in background</entry>
1392 </row>
1393 <row>
1394 <entry>Start fill log cache on open</entry>
1395 <entry>If set &kdesvn; start (re-)filling the log cache when open a repository or working copy if repository &URL; is not assigned local (<filename class="directory">file://</filename>)</entry>
1396 </row>
1397 <row>
1398   <entry>Check if items has <quote>svn:needs-lock</quote> set</entry>
1399 <entry>Check on working copies if an item has this property set and if yes, displays a special overlayed icon. Setting this may let listings get real slow.</entry>
1400 </row>
1401 <row>
1402 <entry>Get file details while remote listing</entry>
1403 <entry>When checked, &kdesvn; get more detailed info about file items when making a listing to remote repositories. So you may see remote locks in overview. Be careful: This may let listings REAL slow!</entry>
1404 </row>
1405 
1406 <row>
1407 <entry>Gain item info recursive</entry>
1408 <entry>When activated, <command>info</command> on folders will gain information about all items below, may be real slow.</entry>
1409 </row>
1410 
1411 <row>
1412 <entry>Store passwords for remote connections</entry>
1413 <entry>Storing passwords is often a security problem. Subversion stores its passwords into a flat file, &ie; passwords in the plain text! So be careful setting this flag and see next entry, too. This item only says if saving passwords is the default, you may change it for specific realms inside login dialog.</entry>
1414 </row>
1415 
1416 <row>
1417 <entry>Store passwords into KDE Wallet</entry>
1418 <entry>When saving passwords, the plain text file from subversion is a security hole. &kdesvn; is able saving them into encrypted &kde; wallet instead there (starting with version 0.12.0) and use them. On other hand other subversion clients aren't able reading them so you must enter them if using tools like <application>svn</application> command line tool or <application>rapidsvn</application>, too. As long as subversion does not encrypt password storage you should think twice about it.</entry>
1419 </row>
1420 
1421 <row>
1422 <entry>Use internal password cache</entry>
1423 <entry>When a password is not stored persistent &kdesvn; may hold it until &kdesvn; ends, so you may not need to enter it again for each operation. This cache is never persistent, &ie; it will not be saved anywhere.</entry>
1424 </row>
1425 
1426 <row>
1427 <entry>Log follows node changes</entry>
1428 <entry>If checked log follows copy operations.</entry>
1429 </row>
1430 
1431 <row>
1432 <entry>Log always reads list of changed files</entry>
1433 <entry>The log command may read list of changed files in commit. This is useful and in most cases it cost not real more traffic.</entry>
1434 </row>
1435 
1436 <row>
1437 <entry>Review items before commit</entry>
1438 <entry>When doing a commit &kdesvn; may make a check what to do. For example, if unversioned items are below which may be added, list items changed and current operation will commit. This cost a depending on tree more or less time.</entry>
1439 </row>
1440 
1441 <row>
1442 <entry>Hide new items in commit box</entry>
1443 <entry>Should unversioned items displayed in commit dialog or not.</entry>
1444 </row>
1445 
1446 <row>
1447 <entry>Update modifies instead of conflicts</entry>
1448 <entry>If set, a local addition at the same path as an
1449 incoming addition of the same node kind results in a normal node with a
1450 possible local modification, instead of a tree conflict.</entry>
1451 </row>
1452 
1453 <row>
1454 <entry>Update makes missing parents</entry>
1455 <entry>If set, create any non-existent parent directories
1456 also by checking them out at depth=empty</entry>
1457 </row>
1458 
1459 </tbody>
1460 
1461 </tgroup>
1462 </table>
1463 
1464 <table id="timejobs-settings">
1465 <title>Timed jobs</title>
1466 <tgroup cols="2">
1467 <tbody>
1468 <row>
1469 <entry><para>Check modified items every N seconds</para> <para>Check for updated items every N seconds</para></entry>
1470 <entry>If set check for updates or modified items in working copy when network is enabled on regular base</entry>
1471 </row>
1472 </tbody>
1473 </tgroup>
1474 </table>
1475 
1476 </sect1>
1477 
1478 <sect1 id="diffmerge-settings">
1479 <title>Diff &amp; Merge</title>
1480 <para>
1481 <variablelist>
1482 
1483 <varlistentry>
1484 <term>Diff ignores content type</term>
1485 <listitem><para>
1486 Only interesting when diff are made with subversion itself. When set, than subversion diff ignores the content type of entries. Otherwise it will not output
1487 diffs from binaries.
1488 </para></listitem>
1489 </varlistentry>
1490 
1491 <varlistentry>
1492 <term>Diff in revision tree is recursive</term>
1493 <listitem><para>
1494 When set, diffs made from within revision tree view are made recursive like in all other cases, too. Otherwise only changes belonging to that folder items are shown. How that is made depends on how you let diffs generate (from subversion itself or from external viewers).
1495 </para></listitem>
1496 </varlistentry>
1497 <varlistentry>
1498 <term>Diff ignores white space changes</term>
1499 <listitem>
1500 <para>
1501   Ignore changes in the amount of white space (option <option>-b</option> to <application>diff</application>)
1502 </para>
1503 </listitem>
1504 </varlistentry>
1505 <varlistentry>
1506 <term>Diff ignores all white spaces</term>
1507 <listitem>
1508   <para>Ignore all white space (option <option>-w</option> to diff)</para>
1509 </listitem>
1510 </varlistentry>
1511 <varlistentry>
1512 <term>Prefer external merge program</term>
1513 <listitem>
1514 <para>Set if merge with external program is preferred and not Subversion's merge</para>
1515 </listitem>
1516 </varlistentry>
1517 <varlistentry>
1518 <term>Use Git diff format</term>
1519 <listitem>
1520 <para></para>
1521 </listitem>
1522 </varlistentry>
1523 <varlistentry>
1524 <term>Show copies as add</term>
1525 <listitem>
1526 <para></para>
1527 </listitem>
1528 </varlistentry>
1529 </variablelist>
1530 
1531 </para>
1532 <sect2>
1533 <title>Use external diff display</title>
1534 <para>
1535 Selects an external application to display diffs. Default is &kompare;.
1536 </para>
1537 </sect2>
1538 <sect2>
1539 <title>External diff display</title>
1540 <para>
1541 Defines what &kdesvn; is using for external display of differences and how it will be called. There are three ways:
1542 </para>
1543 <para>
1544 <variablelist>
1545 <varlistentry>
1546 <term>&lt;program&gt; &lt;parameter&gt;</term>
1547 <listitem><para>
1548 The difference will generated with subversion and put direct into standard input of the external program (&ie;, no temporary files needed)
1549 </para></listitem>
1550 </varlistentry>
1551 
1552 <varlistentry>
1553 <term>&lt;program&gt; &lt;parameter&gt; %f</term>
1554 <listitem><para>
1555   The difference will be generated with subversion, saved into a temporary file and the parameter <option>%f</option> will be replaced with that file name.
1556   This may be used, for instance, with a simple call to <application>less</application> or text viewer.
1557 </para></listitem>
1558 </varlistentry>
1559 
1560 <varlistentry>
1561 <term>&lt;program&gt; &lt;parameter&gt; %1 %2</term>
1562 <listitem><para>
1563 &kdesvn; let the external program make the difference. %1 and %2 will be replaced with required values (file names or folder names). &kdesvn;
1564   stores content to compare in a temporary environment (when folders does an <quote>export</quote>, when single file, does a <quote>cat</quote>) when needed and
1565 cleans up after closing external program or closing itself.
1566 </para></listitem>
1567 </varlistentry>
1568 <varlistentry>
1569 <term>Prefer external merge program</term>
1570 <listitem><para>Select if in merge dialog <guilabel>Use external merge</guilabel> should be checked or not as default.</para></listitem>
1571 </varlistentry>
1572 </variablelist>
1573 </para>
1574 </sect2>
1575 <sect2>
1576 <title>External merge program</title>
1577 <para>
1578   Setup the program and options for using when subversion's builtin merge isn't wanted. The default is <command>kdiff3 %s1 %s2 %t</command>. The order of substitution variables isn't important, and them may there more than once, &eg; like <literal>kdiff3 -o %t %s1 %s2 %t</literal>. This stuff is only tested with <application>meld</application> and &kdiff3;. Think about that external programs mostly do not know anything about subversion <command>ignore</command> parameter so them may show lot more than expected.
1579 </para>
1580 <sect3>
1581 <title>Variable substitutions for external merge program</title>
1582 <para>
1583 <variablelist>
1584 
1585 <varlistentry>
1586 <term>%s1</term>
1587 <listitem><para>
1588 Substituted with source number one.
1589 </para></listitem>
1590 </varlistentry>
1591 
1592 <varlistentry>
1593 <term>%s2</term>
1594 <listitem><para>
1595 Substituted with source number two. If this is empty or this is equal to source one and start and end revision is same, this variable
1596 will skipped. So be careful setting up command lines like <command>xxdiff --title1 %s1 --title2 %s2 %s1 %s2 %t</command>.
1597 </para></listitem>
1598 </varlistentry>
1599 
1600 <varlistentry>
1601 <term>%t</term>
1602 <listitem><para>
1603 Substituted with target.
1604 </para></listitem>
1605 </varlistentry>
1606 
1607 </variablelist>
1608 
1609 </para>
1610 </sect3>
1611 </sect2>
1612 <sect2 id="extern-resolve-setup">
1613 <title>Conflict resolver program</title>
1614 <para>
1615 You may use an external program like &kdiff3; for resolving conflicts, the default is
1616 <command>kdiff3 %o %m %n -o %t</command>.
1617 </para>
1618 <sect3>
1619 <title>Variable substitution for external conflict resolver</title>
1620 <para>
1621 In parenthesis after each description is an example how subversion would call the files. These options are designed for &kdiff3;, because at this moment this is the only one application supporting all parameters required for a good conflict resolving.
1622 <variablelist>
1623 <varlistentry>
1624 <term>%o or %l</term>
1625 <listitem><para>
1626 Old (local, left) version. This means the lower revision number, &ie; the start point of conflicted changes. (<filename>foo.cc.r2</filename>)
1627 </para></listitem>
1628 </varlistentry>
1629 <varlistentry>
1630 <term>%m or %w</term>
1631 <listitem><para>
1632 Mine (working) version of file, &ie; what you had changed against old version. (<filename>foo.cc.mine</filename>)
1633 </para></listitem>
1634 </varlistentry>
1635 <varlistentry>
1636 <term>%n or %r</term>
1637 <listitem><para>
1638 New (remote, right) version of file. For example, version someone other had made. (<filename>foo.cc.r3</filename>)
1639 </para></listitem>
1640 </varlistentry>
1641 <varlistentry>
1642 <term>%t</term>
1643 <listitem><para>
1644 Target name, &eg; the origin name. For &kdiff3; (as an example) this would be name after the <option>-o</option> parameter (= output file). (<filename>foo.cc</filename>)
1645 </para></listitem>
1646 </varlistentry>
1647 </variablelist>
1648 </para>
1649 </sect3>
1650 </sect2>
1651 </sect1>
1652 <!--FIXME
1653 Colors
1654 
1655 Revisions tree
1656 -->
1657 <sect1 id="kio-cmdline-settings">
1658 <title>KIO / command line</title>
1659 <para>
1660 <variablelist>
1661 
1662 <varlistentry>
1663 <term>Show log after executing a command</term>
1664 <listitem><para>
1665 Should a dialog open with the log of last subversion command when it was executed via command line or &konqueror; action menu.
1666 </para></listitem>
1667 </varlistentry>
1668 
1669 <varlistentry>
1670 <term>Minimum log lines to show</term>
1671 <listitem><para>
1672   If <guilabel>Show log...</guilabel> is set, what is the minimum of lines before such a dialog will shown. So you may set that such window will
1673 only shown when interesting output was generated (commit log and so on)
1674 </para></listitem>
1675 </varlistentry>
1676 
1677 <varlistentry>
1678 <term>Do not display context menu in &konqueror;</term>
1679 <listitem><para>
1680 If set, no action menu entry for &kdesvn; is made in &konqueror;.</para></listitem>
1681 </varlistentry>
1682 
1683 <varlistentry>
1684 <term>Do not display entries in toplevel action menu</term>
1685 <listitem><para>
1686 If set, kdesvn will not show some extra actions inside <guimenuitem>Action</guimenuitem> menu of &konqueror; or &dolphin;.</para></listitem>
1687 </varlistentry>
1688 
1689 <varlistentry>
1690 <term>KIO operations use standard log message</term>
1691 <listitem><para>
1692   When making operations on a repository via the &kdesvn; KIO protocol from within &konqueror; (&ie;, <quote>ksvn+...</quote> protocols) on large operations like moving or copy folders &kdesvn; would ask for a log message for each item. This is a behavior of &konqueror;.
1693 When this option is set, the KIO implementation from &kdesvn; will not ask for a log message but set a standard log message. This flag is not for the operations from
1694 &kdesvn; action menu for &konqueror; but only copy/move/mkdir/delete made with &konqueror; or other file managers on a KIO-url.
1695 </para></listitem>
1696 </varlistentry>
1697 
1698 <varlistentry>
1699 <term>Standard message</term>
1700 <listitem><para>
1701   The message &kdesvn; KIO should set on operations from within &konqueror; when the flag above is set. Default is <guilabel>Revision made with &kdesvn; KIO</guilabel>.
1702 </para></listitem>
1703 </varlistentry>
1704 
1705 <varlistentry>
1706 <term>KIO can overwrite</term>
1707 <listitem><para>
1708 If this flag is set, you will have a simple write support for existing
1709 items. &eg; you can open files in your editor and save them direct without
1710 checking out them before (&kdesvn; will do it in background).</para>
1711 <para>Use this only if you are sure what you are doing.
1712 </para></listitem>
1713 </varlistentry>
1714 
1715 <varlistentry>
1716 <term>KIO shows progress messages</term>
1717 <listitem><para>
1718 If set KIO shows in KDE's Plasma detailed information about current operation.
1719 Error messages of KIO will always displayed and can <emphasis>not</emphasis> be switched off.
1720 </para></listitem>
1721 </varlistentry>
1722 
1723 </variablelist>
1724 
1725 </para>
1726 </sect1>
1727 </chapter>
1728 
1729 <chapter id="commands">
1730 <title>Command Reference</title>
1731 
1732 <sect1 id="kdesvn-mainwindow">
1733 <title>The main &kdesvn; window</title>
1734 
1735 <sect2>
1736 <title>The File Menu</title>
1737 <para>
1738 <variablelist>
1739 <varlistentry>
1740 <term><menuchoice>
1741 <shortcut>
1742 <keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo>
1743 </shortcut>
1744 <guimenu>File</guimenu>
1745 <guimenuitem>Open</guimenuitem>
1746 </menuchoice></term>
1747 <listitem><para><action>Open a local working copy or a repository previously checked out</action></para></listitem>
1748 </varlistentry>
1749 
1750 <varlistentry>
1751 <term><menuchoice>
1752 <guimenu>File</guimenu>
1753 <guimenuitem>Recent opened urls</guimenuitem>
1754 </menuchoice></term>
1755 <listitem><para>This is a shortcut to open recently opened repositories. Clicking on this item opens
1756 a list to the side of the menu with several of the most
1757 recently opened local working copies or a repositories.
1758 Clicking on a specific item will open it in &kdesvn;
1759 </para></listitem>
1760 </varlistentry>
1761 
1762 <varlistentry>
1763 <term><menuchoice>
1764 <shortcut>
1765 <keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
1766 </shortcut>
1767 <guimenu>File</guimenu>
1768 <guimenuitem>New</guimenuitem>
1769 </menuchoice></term>
1770 <listitem><para><action>Open a window with a new instance of &kdesvn;</action></para></listitem>
1771 </varlistentry>
1772 
1773 <varlistentry>
1774 <term><menuchoice>
1775 <guimenu>File</guimenu>
1776 <guimenuitem>Subversion Admin</guimenuitem>
1777 </menuchoice></term>
1778 <listitem><para>Menu items with administration tasks for subversion repositories like:
1779 <simplelist>
1780 <member>Create and open new repository</member>
1781 <member>Dump repository to file</member>
1782 <member>Hotcopy a repository</member>
1783 <member>Load dump into repository</member>
1784 </simplelist>
1785 For more information please read the output of <command>svnadmin --help</command>
1786 </para>
1787 </listitem>
1788 </varlistentry>
1789 
1790 <varlistentry>
1791 <term>
1792 <menuchoice>
1793 <shortcut>
1794 <keycombo action="simul">&Ctrl;<keycap>W</keycap></keycombo>
1795 </shortcut>
1796 <guimenu>File</guimenu>
1797 <guimenuitem>Close</guimenuitem>
1798 </menuchoice>
1799 </term>
1800 <listitem><para><action>Close</action> current opened repository or working copy</para></listitem>
1801 </varlistentry>
1802 <varlistentry>
1803 <term><menuchoice>
1804 <shortcut>
1805 <keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
1806 </shortcut>
1807 <guimenu>File</guimenu>
1808 <guimenuitem>Quit</guimenuitem>
1809 </menuchoice></term>
1810 <listitem><para><action>Quits</action> &kdesvn;</para></listitem>
1811 </varlistentry>
1812 </variablelist>
1813 </para>
1814 </sect2>
1815 <sect2>
1816 <title>The Bookmark Menu</title>
1817 <para>
1818 See <ulink url="help:/konqueror/bookmarks.html">&konqueror; help</ulink>.
1819 </para>
1820 </sect2>
1821 
1822 <sect2 id="kdesvn-subversion-menu">
1823 <title>The Subversion Menu</title>
1824 
1825 <variablelist id="subversion-general">
1826 <title>General subversion actions</title>
1827 <varlistentry>
1828 <term>
1829 <menuchoice>
1830 <shortcut><keycombo action="simul">&Ctrl;<keycap>L</keycap></keycombo></shortcut>
1831 <guimenu>Subversion</guimenu>
1832 <guisubmenu>General</guisubmenu>
1833 <guimenuitem>History of item</guimenuitem>
1834 </menuchoice></term>
1835 <listitem>
1836 <para><action>Display</action> lifetime log of the currently selected item.
1837 Be careful, this list may be really big!</para>
1838 </listitem>
1839 </varlistentry>
1840 <varlistentry>
1841 <term><menuchoice>
1842 <shortcut><keycombo action="simul">&Ctrl; &Shift;<keycap>L</keycap></keycombo></shortcut>
1843 <guimenu>Subversion</guimenu>
1844 <guisubmenu>General</guisubmenu>
1845 <guimenuitem>History of item ignoring copies...</guimenuitem>
1846 </menuchoice></term>
1847 <listitem><para>Displays the history log of selected item without following copies.</para></listitem>
1848 </varlistentry>
1849 <varlistentry>
1850 <term><menuchoice>
1851 <shortcut><keycombo action="simul">&Ctrl;<keycap>I</keycap></keycombo></shortcut>
1852 <guimenu>Subversion</guimenu>
1853 <guisubmenu>General</guisubmenu>
1854 <guimenuitem>Details</guimenuitem>
1855 </menuchoice></term>
1856 <listitem><para>Displays detailed information about selected item(s)</para></listitem>
1857 </varlistentry>
1858 <varlistentry>
1859 <term><menuchoice>
1860 <guimenu>Subversion</guimenu>
1861 <guisubmenu>General</guisubmenu>
1862 <guimenuitem>Blame</guimenuitem>
1863 </menuchoice></term>
1864 <listitem><para>Makes an annotated list over all checkins. That may consume time!</para></listitem>
1865 </varlistentry>
1866 <varlistentry>
1867 <term><menuchoice>
1868 <guimenu>Subversion</guimenu>
1869 <guisubmenu>General</guisubmenu>
1870 <guimenuitem>Blame range</guimenuitem>
1871 </menuchoice></term>
1872 <listitem><para>Annotate a range of commits for a file.</para></listitem>
1873 </varlistentry>
1874 <varlistentry>
1875 <term><menuchoice>
1876 <guimenu>Subversion</guimenu>
1877 <guisubmenu>General</guisubmenu>
1878 <guimenuitem>Cat head</guimenuitem>
1879 </menuchoice></term>
1880 <listitem><para>Shows the content of the last committed version of that entry. (May be different to working copy version if working on a WC!)</para></listitem>
1881 </varlistentry>
1882 <varlistentry>
1883 <term><menuchoice>
1884 <shortcut><keycombo action="simul"><keycap>F2</keycap></keycombo></shortcut>
1885 <guimenu>Subversion</guimenu>
1886 <guisubmenu>General</guisubmenu>
1887 <guimenuitem>Move</guimenuitem>
1888 </menuchoice></term>
1889 <listitem><para>Move or rename item inside working copy or in repository</para></listitem>
1890 </varlistentry>
1891 <varlistentry>
1892 <term><menuchoice>
1893 <shortcut><keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo></shortcut>
1894 <guimenu>Subversion</guimenu>
1895 <guisubmenu>General</guisubmenu>
1896 <guimenuitem>Copy</guimenuitem>
1897 </menuchoice></term>
1898 <listitem><para>Copy item inside working copy or in repository</para></listitem>
1899 </varlistentry>
1900 <varlistentry>
1901 <term><menuchoice>
1902 <shortcut><keycombo action="simul"><keycap>Del</keycap></keycombo></shortcut>
1903 <guimenu>Subversion</guimenu>
1904 <guisubmenu>General</guisubmenu>
1905 <guimenuitem>Delete selected files/dirs</guimenuitem>
1906 </menuchoice></term>
1907 <listitem><para>Delete selected entries. If working in a working copy you must commit your deletions afterwards.</para></listitem>
1908 </varlistentry>
1909 <varlistentry>
1910 <term><menuchoice>
1911 <guimenu>Subversion</guimenu>
1912 <guisubmenu>General</guisubmenu>
1913 <guimenuitem>New folder</guimenuitem>
1914 </menuchoice></term>
1915 <listitem><para>Create a new folder.</para></listitem>
1916 </varlistentry>
1917 <varlistentry>
1918 <term><menuchoice>
1919 <guimenu>Subversion</guimenu>
1920 <guisubmenu>General</guisubmenu>
1921 <guimenuitem>Import folders into current</guimenuitem>
1922 </menuchoice></term>
1923 <listitem><para>Select folders you want to import into the current selected directory</para></listitem>
1924 </varlistentry>
1925 <varlistentry>
1926 <term><menuchoice>
1927 <guimenu>Subversion</guimenu>
1928 <guisubmenu>General</guisubmenu>
1929 <guimenuitem>Checkout a repository</guimenuitem>
1930 </menuchoice></term>
1931 <listitem><para>Creates a new working copy of a repository</para></listitem>
1932 </varlistentry>
1933 <varlistentry>
1934 <term><menuchoice>
1935 <guimenu>Subversion</guimenu>
1936 <guisubmenu>General</guisubmenu>
1937 <guimenuitem>Export a repository</guimenuitem>
1938 </menuchoice></term>
1939 <listitem><para>Exports a repository to file system, &ie; creates a clean revision tree without
1940 subversion information.
1941 </para></listitem>
1942 </varlistentry>
1943 <varlistentry>
1944 <term><menuchoice>
1945 <guimenu>Subversion</guimenu>
1946 <guisubmenu>General</guisubmenu>
1947 <guimenuitem>Lock current items</guimenuitem>
1948 </menuchoice></term>
1949 <listitem><para>Mark current items as locked. Read the subversion handbook before using this!
1950 </para></listitem>
1951 </varlistentry>
1952 <varlistentry>
1953 <term><menuchoice>
1954 <guimenu>Subversion</guimenu>
1955 <guisubmenu>General</guisubmenu>
1956 <guimenuitem>Unlock current items</guimenuitem>
1957 </menuchoice></term>
1958 <listitem><para>Remove locks on current items. Read the subversion handbook before using this!
1959 </para></listitem>
1960 </varlistentry>
1961 </variablelist>
1962 
1963 <variablelist id="subversion-workingcopy">
1964 <title>Working copy</title>
1965 <varlistentry>
1966 <term><menuchoice>
1967 <guimenu>Subversion</guimenu>
1968 <guisubmenu>Working copy</guisubmenu>
1969 <guimenuitem>Update to head</guimenuitem>
1970 </menuchoice></term>
1971 <listitem><para>Update working copy to HEAD of repository</para></listitem>
1972 </varlistentry>
1973 <varlistentry>
1974 <term><menuchoice>
1975 <guimenu>Subversion</guimenu>
1976 <guisubmenu>Working copy</guisubmenu>
1977 <guimenuitem>Update to revision...</guimenuitem>
1978 </menuchoice></term>
1979 <listitem><para>Update working copy to a specific revision of repository</para></listitem>
1980 </varlistentry>
1981 <varlistentry>
1982 <term><menuchoice>
1983 <shortcut><keycombo action="simul">&Ctrl;<keycap>#</keycap></keycombo></shortcut>
1984 <guimenu>Subversion</guimenu>
1985 <guisubmenu>Working copy</guisubmenu>
1986 <guimenuitem>Commit</guimenuitem>
1987 </menuchoice></term>
1988 <listitem><para>Commit changes inside working copy for selected items to repository.</para></listitem>
1989 </varlistentry>
1990 <varlistentry>
1991 <term><menuchoice>
1992 <shortcut><keycombo action="simul">&Ctrl;<keycap>D</keycap></keycombo></shortcut>
1993 <guimenu>Subversion</guimenu>
1994 <guisubmenu>Working copy</guisubmenu>
1995 <guimenuitem>Diff local changes</guimenuitem>
1996 </menuchoice></term>
1997 <listitem><para>Display local changes as diff-output (without network access). This is the difference only to
1998 last state the working copy was updated to, not against the version in repository.</para></listitem>
1999 </varlistentry>
2000 <varlistentry>
2001 <term><menuchoice>
2002 <shortcut><keycombo action="simul">&Ctrl;<keycap>H</keycap></keycombo></shortcut>
2003 <guimenu>Subversion</guimenu>
2004 <guisubmenu>Working copy</guisubmenu>
2005 <guimenuitem>Diff against HEAD</guimenuitem>
2006 </menuchoice></term>
2007 <listitem><para>Diff's current working copy against head of repository.</para></listitem>
2008 </varlistentry>
2009 <varlistentry>
2010 <term><menuchoice>
2011 <shortcut><keycombo action="simul">&Ctrl;<keycap>P</keycap></keycombo></shortcut>
2012 <guimenu>Subversion</guimenu>
2013 <guisubmenu>Working copy</guisubmenu>
2014 <guimenuitem>Properties</guimenuitem>
2015 </menuchoice></term>
2016 <listitem><para>View/Edit properties assigned with current entry.</para></listitem>
2017 </varlistentry>
2018 <varlistentry>
2019 <term><menuchoice>
2020 <shortcut><keycombo action="simul"><keycap>Insert</keycap></keycombo></shortcut>
2021 <guimenu>Subversion</guimenu>
2022 <guisubmenu>Working copy</guisubmenu>
2023 <guimenuitem>Add selected files/dirs</guimenuitem>
2024 </menuchoice></term>
2025 <listitem><para>Add selected files and/or folders to version control.</para></listitem>
2026 </varlistentry>
2027 <varlistentry>
2028 <term><menuchoice>
2029 <guimenu>Subversion</guimenu>
2030 <guisubmenu>Working copy</guisubmenu>
2031 <guimenuitem>Revert current changes</guimenuitem>
2032 </menuchoice></term>
2033 <listitem><para>Revert changes made in working copy and updates to last updated state.</para></listitem>
2034 </varlistentry>
2035 <varlistentry>
2036 <term><menuchoice>
2037 <guimenu>Subversion</guimenu>
2038 <guisubmenu>Working copy</guisubmenu>
2039 <guimenuitem>Mark resolved</guimenuitem>
2040 </menuchoice></term>
2041 <listitem><para>Mark conflicted items as not conflicted and remove associated files.</para></listitem>
2042 </varlistentry>
2043 <varlistentry>
2044 <term><menuchoice>
2045 <guimenu>Subversion</guimenu>
2046 <guisubmenu>Working copy</guisubmenu>
2047 <guimenuitem>Merge two revisions</guimenuitem>
2048 </menuchoice></term>
2049 <listitem><para>Merge two revisions of entries into working copy.</para></listitem>
2050 </varlistentry>
2051 <varlistentry>
2052 <term><menuchoice>
2053 <guimenu>Subversion</guimenu>
2054 <guisubmenu>Working copy</guisubmenu>
2055 <guimenuitem>Ignore/Unignore current item</guimenuitem>
2056 </menuchoice></term>
2057 <listitem><para>Edit property of parent folder of the current item so that selected item will be marked as ignored if not set, otherwise remove it from ignore list.</para></listitem>
2058 </varlistentry>
2059 <varlistentry>
2060 <term><menuchoice>
2061 <guimenu>Subversion</guimenu>
2062 <guisubmenu>Working copy</guisubmenu>
2063 <guimenuitem>Cleanup</guimenuitem>
2064 </menuchoice></term>
2065 <listitem><para>Clean up the working copy and remove (commit-)locks if any</para></listitem>
2066 </varlistentry>
2067 <varlistentry>
2068 <term><menuchoice>
2069 <guimenu>Subversion</guimenu>
2070 <guisubmenu>Working copy</guisubmenu>
2071 <guimenuitem>Switch repository</guimenuitem>
2072 </menuchoice></term>
2073 <listitem><para>Switch the root of the current working copy.</para></listitem>
2074 </varlistentry>
2075 </variablelist>
2076 
2077 <variablelist id="subversion-repository">
2078 <title>Repository</title>
2079 <varlistentry>
2080 <term><menuchoice>
2081 <guimenu>Subversion</guimenu>
2082 <guisubmenu>Repository</guisubmenu>
2083 <guimenuitem>Checkout current repository path</guimenuitem>
2084 </menuchoice></term>
2085 <listitem><para>Create a working copy from the current selected entry if a directory.</para></listitem>
2086 </varlistentry>
2087 <varlistentry>
2088 <term><menuchoice>
2089 <guimenu>Subversion</guimenu>
2090 <guisubmenu>Repository</guisubmenu>
2091 <guimenuitem>Export current repository path</guimenuitem>
2092 </menuchoice></term>
2093 <listitem><para>Create a clean copy on local file system from the current selected entry if a directory.</para></listitem>
2094 </varlistentry>
2095 </variablelist>
2096 
2097 <variablelist id="subversion-view">
2098 <title>View actions</title>
2099 <varlistentry>
2100 <term><menuchoice><shortcut><keycombo action="simul"><keycap>F5</keycap></keycombo></shortcut>
2101 <guimenu>Subversion</guimenu>
2102 <guisubmenu>View</guisubmenu>
2103 <guimenuitem>Refresh view</guimenuitem>
2104 </menuchoice></term>
2105 <listitem><para><action>Refresh</action> the current status of all displayed items. This will list each item asked for to be displayed at current status.
2106 </para></listitem>
2107 </varlistentry>
2108 
2109 <varlistentry>
2110 <term><menuchoice>
2111 <guimenu>Subversion</guimenu>
2112 <guisubmenu>View</guisubmenu>
2113 <guimenuitem>Unfold File Tree / Fold File Tree</guimenuitem>
2114 </menuchoice></term>
2115 <listitem><para>Expand or collapse the repository tree view.
2116 </para></listitem>
2117 </varlistentry>
2118 
2119 <varlistentry>
2120 <term><menuchoice>
2121 <guimenu>Subversion</guimenu>
2122 <guisubmenu>Log Cache</guisubmenu>
2123 <guimenuitem>Stop updating the log cache</guimenuitem>
2124 </menuchoice></term>
2125 <listitem><para>The log is cached and used to display the revision tree of a repository. Depending on the Internet connection, size of the subversion repository and history length this may take much time.
2126 Therefore you can stop updating the cache using this action.
2127 </para></listitem>
2128 </varlistentry>
2129 
2130 <varlistentry>
2131 <term><menuchoice>
2132 <guimenu>Subversion</guimenu>
2133 <guimenuitem>Add ssh identities to ssh-agent</guimenuitem>
2134 </menuchoice></term>
2135 <listitem><para>Store your SSH-key password for your current session so no further entering of your password is needed.
2136 </para></listitem>
2137 </varlistentry>
2138 </variablelist>
2139 </sect2>
2140 
2141 <sect2 id="kdesvn-database-menu">
2142 <title>The Database Menu</title>
2143 <variablelist>
2144 <varlistentry>
2145 <term><menuchoice>
2146 <guimenu>Database</guimenu>
2147 <guimenuitem>Show database content</guimenuitem>
2148 </menuchoice></term>
2149 <listitem><para>Displays an overview about the cache database content for known repositories and
2150 allows to delete the cache or repository and access to repository settings.
2151 </para></listitem>
2152 </varlistentry>
2153 <varlistentry>
2154 <term><menuchoice>
2155 <guimenu>Database</guimenu>
2156 <guimenuitem>Settings for current repository</guimenuitem>
2157 </menuchoice></term>
2158 <listitem><para>Display a dialog to adapt the settings for the cache, logs and statistics.
2159 </para></listitem>
2160 </varlistentry>
2161 </variablelist>
2162 </sect2>
2163 
2164 <sect2>
2165 <title>The Settings and Help Menu</title>
2166 <para>Apart from the common &kde; <guimenu>Settings</guimenu> and <guimenu>Help</guimenu>
2167 menu items described in the <ulink url="help:/fundamentals/menus.html#menus-settings"
2168 >Settings Menu</ulink> and <ulink url="help:/fundamentals/menus.html#menus-help">Help Menu</ulink>
2169 of the &kde; Fundamentals &kdesvn; this additional menu entry:</para>
2170 <variablelist>
2171 
2172 <varlistentry>
2173 <term><menuchoice>
2174 <guimenu>Settings</guimenu>
2175 <guimenuitem>Quick settings</guimenuitem>
2176 </menuchoice></term>
2177 <listitem>
2178 
2179 <variablelist>
2180 
2181 <varlistentry>
2182 <term>
2183 <guimenuitem>Load last opened URL on start</guimenuitem>
2184 </term><listitem>
2185 <para>Reload last opened URL if no one is given on command line.</para>
2186 </listitem>
2187 </varlistentry>
2188 
2189 <varlistentry>
2190 <term>
2191 <guimenuitem>Logs follow node changes</guimenuitem>
2192 </term><listitem>
2193 <para><!--FIXME What does this option do? --></para>
2194 </listitem>
2195 </varlistentry>
2196 
2197 <varlistentry>
2198 <term>
2199 <guimenuitem>Display ignored files</guimenuitem>
2200 </term><listitem>
2201 <para>Show items marked in subversion for ignore or not.</para>
2202 </listitem>
2203 </varlistentry>
2204 
2205 <varlistentry>
2206 <term>
2207 <guimenuitem>Display unknown files</guimenuitem>
2208 </term><listitem>
2209 <para>Show files not added to the subversion repository.</para>
2210 </listitem>
2211 </varlistentry>
2212 
2213 <varlistentry>
2214 <term>
2215 <guimenuitem>Hide unchanged files</guimenuitem>
2216 </term><listitem>
2217 <para>Use this action to show only changed files and provide a clear and concise overview.</para>
2218 </listitem>
2219 </varlistentry>
2220 
2221 <varlistentry>
2222 <term>
2223 <guimenuitem>Work online</guimenuitem>
2224 </term><listitem>
2225 <para>Working offline the log cache will not be updated, therefore the cached log may differ from real log.</para>
2226 </listitem>
2227 </varlistentry>
2228 
2229 </variablelist>
2230 
2231 </listitem>
2232 </varlistentry>
2233 
2234 </variablelist>
2235 
2236 </sect2>
2237 
2238 </sect1>
2239 </chapter>
2240 <chapter id="credits-and-license">
2241 <title>Credits and License and Thanks</title>
2242 <para>
2243 Program copyright 2005-2009 &Rajko.Albrecht; &Rajko.Albrecht.mail;
2244 </para>
2245 <para>
2246 Many thanks to contributors:
2247 </para>
2248 <itemizedlist>
2249 <listitem><para>Andreas Richter <email>ar@oszine.de</email> - for qt4 port of svnqt</para>
2250 </listitem>
2251 <listitem><para>Michael Biebl <email>biebl@teco.edu</email> - for a lot of help, ideas, implementation and hints.</para>
2252 </listitem>
2253 <listitem><para>Bram Schoenmakers <email>bramschoenmakers@kde.nl</email> - for &kde;-specific hints, dutch translation, cleaning up my code.</para>
2254 </listitem>
2255 </itemizedlist>
2256 <para>
2257 And thanks to all other translators (I never thought that I get that fast such a lot of translations!) and for all of your positive and negative feedback. It helped a lot.
2258 </para>
2259 <para>
2260   If you want your own translation for &kdesvn; and may want help please read on the <ulink url="http://l10n.kde.org/">&kde; Localization page</ulink> or ask on <ulink url="mailto:kde-i18n-doc@kde.org"><email>kde-i18n-doc@kde.org</email> mailing list</ulink>.
2261 </para>
2262 <para>
2263 Documentation copyright 2005-2006 &Rajko.Albrecht; &Rajko.Albrecht.mail;
2264 </para>
2265 <!-- TRANS:CREDIT_FOR_TRANSLATORS -->
2266 
2267 &underFDL;
2268 &underGPL;
2269 </chapter>
2270 
2271 <appendix id="revision-syntax">
2272 <title>Syntax for revisions</title>
2273 <para>
2274   Revisions may be given in the same form as for the standard <application>svn</application> client. That means: number, keyword or date.
2275 </para>
2276 <para>
2277 <variablelist>
2278 
2279 <varlistentry>
2280 <term>Number</term>
2281 <listitem><para>
2282   A number greater or equal -1. -1 means <quote>unspecified revision</quote>, 0 is the beginning. Normally, these numbers should not be used (most operations will fail with that).
2283 </para></listitem>
2284 </varlistentry>
2285 
2286 <varlistentry>
2287 <term>Keyword</term>
2288 <listitem><para>
2289 One of
2290 <itemizedlist>
2291 
2292 <listitem><para>
2293 HEAD
2294 </para></listitem>
2295 
2296 <listitem><para>
2297 BASE
2298 </para></listitem>
2299 
2300 <listitem><para>
2301 COMMITED
2302 </para></listitem>
2303 
2304 <listitem><para>
2305 PREV
2306 </para></listitem>
2307 
2308 <listitem><para>
2309 START
2310 </para></listitem>
2311 
2312 <listitem><para>
2313 WORKING
2314 </para></listitem>
2315 
2316 </itemizedlist>
2317 
2318 </para>
2319 <para>
2320 The keywords are case sensitive! For example, head is not the same as HEAD.
2321 </para>
2322 </listitem>
2323 </varlistentry>
2324 
2325 <varlistentry>
2326 <term>Date</term>
2327 <listitem><para>
2328 Date in form {YYYY-MM-DD}. It must real MM or DD - &eg; 2005-1-1 must be written as {2005-01-01}.
2329 </para></listitem>
2330 </varlistentry>
2331 
2332 </variablelist>
2333 
2334 </para>
2335 <para>
2336   Appending a specific revision to an &URL; will always made via <quote>?rev=<replaceable>revision</replaceable></quote>.
2337 </para>
2338 </appendix>
2339 
2340 &documentation.index;
2341 </book>