# subversion – Deploys a subversion repository

- Synopsis
- Parameters
- Notes
- Examples
- Status

## Synopsis

- Deploy given repository URL / revision to dest. If dest exists, update to the specified revision, otherwise perform a checkout.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---

checkout
boolean

Choices:
- no
- yes ←

If `no`, do not check out the repository if it does not exist locally.

dest - / required |  | Absolute path where the repository should be deployed.
executable - |  | Path to svn executable to use. If not supplied, the normal mechanism for resolving binary paths will be used.

export
boolean

Choices:
- no ←
- yes

If `yes`, do export instead of checkout/update.

force
boolean

Choices:
- no ←
- yes

If `yes`, modified files will be discarded. If `no`, module will fail if it encounters modified files. Prior to 1.9 the default was `yes`.

in_place
boolean
added in 2.6

Choices:
- no ←
- yes

If the directory exists, then the working copy will be checked-out over-the-top using svn checkout --force; if force is specified then existing files with different content are reverted

password - |  | `--password` parameter passed to svn when svn is less than version 1.10.0. This is not secure and the password will be leaked to argv. `--password-from-stdin` parameter when svn is greater or equal to version 1.10.0.
repo - / required |  | The subversion URL to the repository. aliases: name, repository
revision - | Default: "HEAD" | Specific revision to checkout. aliases: version

switch
boolean

Choices:
- no
- yes ←

If `no`, do not call svn switch before update.

update
boolean

Choices:
- no
- yes ←

If `no`, do not retrieve new revisions from the origin repository.

username - |  | `--username` parameter passed to svn.

## Notes

Note

- Requires svn to be installed on the client.
- This module does not handle externals.

## Examples

    - name: Checkout subversion repository to specified folder
      subversion:
        repo: svn+ssh://an.example.org/path/to/repo
        dest: /src/checkout

    - name: Export subversion directory to folder
      subversion:
        repo: svn+ssh://an.example.org/path/to/repo
        dest: /src/export
        export: yes

    - name: Get information about the repository whether or not it has already been cloned locally
    - subversion:
        repo: svn+ssh://an.example.org/path/to/repo
        dest: /srv/checkout
        checkout: no
        update: no

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Core Team. [core]

### Red Hat Support

More information about Red Hat’s support of this module is available from this Red Hat Knowledge Base article.

### Authors

- Dane Summers (@dsummersl) <njharman@gmail.com>

Hint

If you notice any issues in this documentation, you can edit this document to improve it.