# salt.states.hg

## Interaction with Mercurial repositories

Before using hg over ssh, make sure the remote host fingerprint already exists in ~/.ssh/known_hosts, and the remote host has this host's public key.

    https://bitbucket.org/example_user/example_repo:
        hg.latest:
          - rev: tip
          - target: /tmp/example_repo

salt.states.hg.latest(name, rev=None, target=None, clean=False, user=None, identity=None, force=False, opts=False, update_head=True)

  Make sure the repository is cloned to the given directory and is up to date

  name

    Address of the remote repository as passed to "hg clone"

  rev

    The remote branch, tag, or revision hash to clone/pull

  target

    Target destination directory path on minion to clone into

  clean

    Force a clean update with -C (Default: False)

  user

    Name of the user performing repository management operations

    Added in version 0.17.0.

  identity

    Private SSH key on the minion server for authentication (ssh://)

    Added in version 2015.5.0.

  force

    Force hg to clone into pre-existing directories (deletes contents)

  opts

    Include additional arguments and options to the hg command line

  update_head

    Should we update the head if new changes are found? Defaults to True

    Added in version 2017.7.0.