SCM Implementation: Subversion

General Info

Link : http://subversion.apache.org/

License : Apache License, Version 2.0

SCM Url

For all URLs below, we use a colon (:) as separator. If you use a colon for one of the variables (e.g. a windows path), then use a pipe (|) as separator.

scm:svn:svn://[username[:password]@]server_name[:port]/path_to_repository
scm:svn:svn+ssh://[username@]server_name[:port]/path_to_repository
scm:svn:file://[hostname]/path_to_repository
scm:svn:http://[username[:password]@]server_name[:port]/path_to_repository
scm:svn:https://[username[:password]@]server_name[:port]/path_to_repository

Examples

scm:svn:file:///svn/root/module
scm:svn:file://localhost/path_to_repository
scm:svn:file://my_server/path_to_repository
scm:svn:http://svn.apache.org/svn/root/module
scm:svn:https://username@svn.apache.org/svn/root/module
scm:svn:https://username:password@svn.apache.org/svn/root/module

Provider Configuration

The provider configuration is defined in $user.home/.scm/svn-settings.xml.

Here is an example of what a configuration file might look like:

<svn-settings>
  <configDirectory>your_configuration_directory</configDirectory>
  <useCygwinPath>true in order to use cygwin path /cygdrive/c</useCygwinPath>
  <cygwinMountPath>the mount path to use default is /cygwin</cygwinMountPath>
  <useNonInteractive>if false --non-interactive will not be used in the svn command line</useNonInteractive>
  <useAuthCache>if true --no-auth-cache will not be used in the svn command line</useAuthCache>
  <trustServerCert>if true --trust-server-cert will be used in the cli</trustServerCert>
</svn-settings>

For more info see the reference guide.

Configuration directory

You can define the subversion configuration directory ('--config-dir' svn global option) in the provider configuration file or with 'maven.scm.svn.config_directory' command line parameter.

mvn -Dmaven.scm.svn.config_directory=your_configuration_directory scm:update