Shortcuts - libvcs._internal.shortcuts#

Shortcuts for creating repos.

Note

This is an internal API not covered by versioning policy.

libvcs._internal.shortcuts.create_project(*, url, dir, vcs=None, progress_callback=None, **kwargs)[source]#

Return an object representation of a VCS repository.

Return type:

Union[GitSync, HgSync, SvnSync]

Parameters:

Examples

>>> from libvcs._internal.shortcuts import create_project
>>> r = create_project(
...     url=f'file://{create_git_remote_repo()}',
...     vcs='git',
...     dir=tmp_path
... )
>>> isinstance(r, GitSync)
True

create_project can also guess VCS for certain URLs:

>>> r = create_project(
...     # Note the git+ before the URL
...     url=f'git+file://{create_git_remote_repo()}',
...     dir=tmp_path
... )
>>> isinstance(r, GitSync)
True