The only pure Java Subversion library in the world!
Supported system properties and configuration options
This section contains information on configuring the SVNKit library - in order
that one can adjust the library up to his individual wishes. Here you will find
information on what configuration files SVNKit uses during runtime, what
system properties are used in that case when config files are not available, and
HTTP proxy setup
By default SVNKit uses proxy settings from the servers configuration file
that is located in the default SVN run-time configuration area.
Default configuration area is located at
~/.subversion on Linux and OS X and
C:\Documents and Settings\userName\Application Data\Subversion on Windows.
You may read more on Subversion client configuration files at Subversion Book.
SVN+SSH authentication whith Subclipse
If you're using SVNKit with Subclipse version 0.9.37 or newer there is no
need to use system properties to define SSH credentials, Subclipse will automatically prompt you for
private key or password during establishing SSH connection.
SVN+SSH authentication with private key
By default SVNKit tries to obtain all necessary information
from the [tunnels] section of the config file that is
located in the default SVN run-time configuration area. However if
that information is not complete or not found at all, SVNKit tries
then to use predefined system properties listed beneath.
SVNKit uses a pure java Ganymed library to establish SSH
connections. This library supports only SSH version 2, with password or private key authentication. You may use the
following system properties to let SVNKit know about your private key and passphrase:
svnkit.ssh2.key = /path/to/private/key/file
svnkit.ssh2.username = userName
svnkit.ssh2.passphrase = optionalPassphrase
svnkit.ssh2.password = userpassword
svnkit.ssh2.port = optionalPort
SVN+SSH authentication with private key in Eclipse
When starting Eclipse you can provide the above properties like this:
$ eclipse -vmargs \
Note: a user name for an ssh connection will be taken from SVN Repository properties.
To avoid special batch script creation to launch Eclipse you may define ssh related properties in
Eclipse config.ini file -
ECLIPSE_HOME/configuration/config.ini (tip provided by Andrew Berman):
SVNKit uses SSL support included into JDK. Some JDK versions don't
support SSL server certificates longer than 1024 bytes or don't support
certain Cypher Suites. If you're experiencing problems accessing a Subversion
repository over SSL connection (via https protocol) consider using the
latest JDK version and upgrading the JDK JCE package (Cryptotgraphic Extension)
to an "unlimited strenght" one. Read this article
for more details on how to install JCE.
Trusting SSL Certificates
If SVNKit is used as a standalone library and no custom authentication
provider is registered, SVNKit:
Client SSL authentication
In the Subversion servers configuration file you can specify your
SSL authentication certificate files for a specific group:
ssl-client-cert-file= PKCS#12 format client certificate file
ssl-client-cert-password= Client Key password, if needed.
Read more information on this options in the Subversion book.
If you have any questions regarding SVNKit, would like to report a bug or contribute a patch, please write to