Programmers information about KIO::ksvn

Note

You may skip this if not interested in KIO programming.

KIO::ksvn::special knows the following operations, these are made almost equal in call to the current existing in KIO from kdesdk so, for instance, KDevelop may use it if kdesdk isn't installed but uses kdesvn::KIO::svn.

Command list

Table 3.1. Command overview for KIO::ksvn::special

Command nameNumeric idParameter listImplemented in the current version?
Checkout1

KURL repository, KURL target, int revnumber, QString revkind

The target will NOT be modified, e.g., but the content will be checked out without creating a subfolder! For example, the source may be http://server/repos/project/trunk, target /home/user/proj/ then the contents of trunk will copied into /home/user/proj/ not /home/user/proj/trunk/!

Yes
Update2

KURL url, int revnum, QString revstring

If revnum < 0 the revstring is parsed. Format of revstring is described in Appendix.

Yes
Commit3

KURL::List urls

urls is a list of local urls to commit. Will ask for log message.

Yes
Log4

int startrevnumber, QString startrevstring, int endrevnumber, QString endrevstring, KURL::List

Use this with care - this may produce a lot of data.

Yes
Import5KURL targetrepository, KURL sourcepathYes
Add6KURLYes
Del7KURL::ListYes
Revert8

KURL::List

Revert in KIO is always non-recursive, no questions (calling app must do it itself)

Yes
Status9

KURL item, bool checkRepos, bool recurse

item - the item check info about, checkRepos - check if there are newer versions in repository, recurse - check recursive or not.

Yes
Mkdir10KURL::ListYes
Resolve11KURL, bool recursiveYes
Switch12KURL working_copy_path, KURL new_repository_url, bool recursive,int revnumber, QString revkindYes
Diff13

URL uri1, KURL uri2, int r1, QString rstring1, int r2, QString rstring 2, bool recursive

For difference between repository file:/// and working copy setup working copy urls without a protocol!

Yes


Return values

Return values may be given via metadata, see apidoc for details.

Table 3.2. Content of metadata

KeyPossible value
pathPath of the item action was made on, e.g. given url
actionNumeric action type
kindkind of item (mostly folder or file)
mime_tSubversion mimetype of item
contentState of content (subversion value)
propState of properties (subversion value)
revResulting revision or revision worked on
stringInternal defined human readable message.
loggedactionSubversion defined action string on item (A,M,D)
loggedcopyfrompathIf copied from which path? (may be empty)
loggedcopyfromrevisionIf copied at which revision? (may be < 0)
loggedpathOn which single path the entries logged action and so on are set. (path is set to the calling url)
diffresulta line of difference output