Sync - libvcs.sync

Keep a local checkout in sync with its remote: obtain() and its Mercurial and Subversion counterparts clone the repository when it doesn’t exist yet and update it when it does, through GitSync, HgSync, and SvnSync — built on top of libvcs.cmd.

Compare to: fabtools.require.git, salt.states.git, ansible.builtin.git

Warning

All APIs are considered experimental and subject to break pre-1.0. They can and will break between versions.

Modules

Git Sync

Clone, fetch, and update Git repositories.

libvcs.sync.git
Hg Sync

Clone and update Mercurial repositories.

libvcs.sync.hg
SVN Sync

Checkout and update Subversion working copies.

libvcs.sync.svn
Base

Abstract base class for all sync backends.

libvcs.sync.base

Constants

Constants for use by libvcs.sync.

libvcs.sync.constants.DEFAULT_VCS_LITERAL
data
data
libvcs.sync.constants.DEFAULT_VCS_LITERAL

Default VCS systems by string (in DEFAULT_VCS_CLASS_MAP)

alias of Literal[‘git’, ‘hg’, ‘svn’]

libvcs.sync.constants.DEFAULT_VCS_CLASS_UNION
data
data
libvcs.sync.constants.DEFAULT_VCS_CLASS_UNION

Union of VCS Classes

alias of type[GitSync | HgSync | SvnSync]

libvcs.sync.constants.DEFAULT_VCS_CLASS_MAP: dict[Literal['git', 'hg', 'svn'], type[GitSync | HgSync | SvnSync]] = {'git': <class 'libvcs.sync.git.GitSync'>, 'hg': <class 'libvcs.sync.hg.HgSync'>, 'svn': <class 'libvcs.sync.svn.SvnSync'>}
data
data
libvcs.sync.constants.DEFAULT_VCS_CLASS_MAP: dict[Literal['git', 'hg', 'svn'], type[GitSync | HgSync | SvnSync]] = {'git': <class 'libvcs.sync.git.GitSync'>, 'hg': <class 'libvcs.sync.hg.HgSync'>, 'svn': <class 'libvcs.sync.svn.SvnSync'>}

str -> class Map. DEFAULT_VCS_CLASS_MAP['git'] -> GitSync