hgapi Package¶
hgapi
Module¶
-
exception
hgapi.hgapi.
HgException
(msg, exit_code=None)[source]¶ Exception class allowing a exit_code parameter and member to be used when calling Mercurial to return exit code.
-
class
hgapi.hgapi.
Repo
(path, user=None)[source]¶ A representation of a Mercurial repository.
-
classmethod
command
(path, env, *args)[source]¶ Run a hg command in path and return the result.
Raise on error.
-
configbool
(section, key)[source]¶ Return a config value as a boolean value.
Empty values, the string ‘false’ (any capitalization), and ‘0’ are considered False, anything else is True
-
configlist
(section, key)[source]¶ Return a config value as a list.
Will try to create a list delimited by commas, or whitespace if no commas are present.
-
get_branches
()[source]¶ Returns a list of branches from the repo, including versions.
If get_active_only is True, then only return active branches.
-
hg_add
(filepath=None)[source]¶ Add a file to the repo.
when no filepath is given, all files are added to the repo.
-
hg_addremove
(filepath=None)[source]¶ Add a file to the repo.
When no filepath is given, all files are added and removed to and respectively from the repo.
-
hg_archive
(destination, revision=None, archive_type=None)[source]¶ Archive a repository.
Creates an archive of a single revision in the specified destination.
If revision is not supplied the default is the parent of the repository’s working directory (tip).
If archive_type is not supplied mercurial will determine the type based on the file extension. If there is no file extension the default is “files”.
-
hg_branch
(branch_name=None)[source]¶ Create a branch or get a branch name.
If branch_name is not None, the branch is created. Otherwise the current branch name is returned.
-
classmethod
hg_clone
(url, path, *args)[source]¶ Clone repository at given url to path, then return repo object to path.
-
hg_commit
(message, user=None, date=None, files=[], close_branch=False)[source]¶ Commit changes to the repository.
-
hg_diff
(rev_a=None, rev_b=None, filenames=None)[source]¶ Get a unified diff as returned by ‘hg diff’.
rev_a and rev_b are passed as -r <rev> arguments to the call, filenames are expected to be an iterable of file names.
Returns a list of dicts where every dict has a ‘filename’ and ‘diff’ field, where with diff being the complete diff for the file including header (diff -r xxxx -r xxx...).
-
hg_heads
(short=False)[source]¶ Get a list with the node identifiers of all open heads. If short is given and is not False, return the short form of the node id.
-
hg_log
(identifier=None, limit=None, template=None, branch=None, **kwargs)[source]¶ Get repositiory log.
-
hg_merge
(reference, preview=False)[source]¶ Merge reference to current.
With ‘preview’ set to True get a list of revision numbers containing all revisions that would have been merged.
-
classmethod
hg_root
(path)[source]¶ Return the root (top) of the path.
When no path is given, current working directory is used. Raises HgException when no repo is available.
-
hg_status
(empty=False, clean=False)[source]¶ Get repository status.
Returns a dict containing a change char -> file list mapping, where change char is in:
A, M, R, !, ?
Example after adding one.txt, modifying a_folder/two.txt and three.txt:
{'A': ['one.txt'], 'M': ['a_folder/two.txt', 'three.txt'], '!': [], '?': [], 'R': []}
If empty is set to non-False value, don’t add empty lists. If clean is set to non-False value, add clean files as well (-A)
-
hg_tag
(*tags, **kwargs)[source]¶ Add one or more tags to the current revision.
Add one or more tags to the current revision, or revision given by passing ‘rev’ as a keyword argument:
>>> repo.hg_tag('mytag', rev=3)
Get all tags from the repo.
Returns a dict containing tag: shortnode mapping
-
classmethod