Page tree

SubGit can refer to the Subversion credentials cache to log in to a Subversion repository.

To enable the authentication with Subversion credentials cache, specify the following settings:

[auth "default"]
subversionConfigurationDirectory = PATH
useDefaultSubversionConfigurationDirectory = [true false]

subversionConfigurationDirectory setting defines a path to a Subversion directory that stores credentials' cache.

The useDefaultSubversionConfigurationDirectory setting specifies whether SubGit will use the default Subversion configuration directory to obtain the authentication data or not.

The 1st setting takes priority over the 2nd. If the path to the appropriate Subversion directory with caсhed credentials is specified, SubGit refers to it and ignores the default Subversion configuration directory.

The location of the default Subversion configuration directory and the way the credentials cache is stored in it depend on the operating system that you use. The usual configuration is the following:

  • On Windows

Subversion clients store encrypted passwords in the %APPDATA%\Subversion\auth\svn.simple directory. Passwords are encrypted by the standard Windows cryptographic services.

  • On Mac OS X

The Subversion authentication realm and usernames are stored in the ~/.subversion/auth/svn.simple directory. The encrypted passwords are stored in macOS Keychain.

  • On Unix-like operating systems

By default, Subversion clients ask permission to store unencrypted passwords in the ~/.subversion/auth/svn.simple directory. The secure storage can be provided by the GNOME Keyring, KDE Wallet or GnuPG Agent services.

Currently, SubGit supports only GNOME Keyring.

The example below shows how to use the Subversion credentials cache with encrypted passwords on Linux.

Example: Use of credentials cache with encrypted passwords on Linux

All the passwords stores are disabled in the Subversion configuration file:

    ### Set password stores used by Subversion. They should be
    ### delimited by spaces or commas. The order of values determines
    ### the order in which password stores are used.
    ### Valid password stores:
    ###   gnome-keyring        (Unix-like systems)
    ###   kwallet              (Unix-like systems)
    ###   gpg-agent            (Unix-like systems)
    ###   keychain             (Mac OS X)
    ###   windows-cryptoapi    (Windows)
    # password-stores = gpg-agent,gnome-keyring,kwallet
    ### To disable all password stores, use an empty list:
    # password-stores =

  1. To enable a password store, in the Subversion configuration file, uncomment a password-stores line and specify the store that you want to enable.

    Currently, SubGit supports only GNOME Keyring.

    For example, password-stores = gnome-keyring

  2. In a Subversion client, run any command that prompts for the credentials to a Subversion server, for example, svn info url.  After that the credentials cache is stored in a text file in the ~/.subversion/auth/svn.simple directory. The encrypted password is stored in GNOME keyring.

SubGit can use the credentials cache from this directory to log in to a Subversion repository.

  • No labels