class documentation

class DiskRefsContainer(RefsContainer):

View In Hierarchy

Refs container that reads refs from disk.

Method __init__ Undocumented
Method __repr__ Undocumented
Method add_if_new Add a new reference only if it does not already exist.
Method allkeys All refs present in this container.
Method get_packed_refs Get contents of the packed-refs file.
Method get_peeled Return the cached peeled value of a ref, if available.
Method read_loose_ref Read a reference file and return its contents.
Method refpath Return the disk path of a ref.
Method remove_if_equals Remove a refname only if it currently equals old_ref.
Method set_if_equals Set a refname to new_ref only if it currently equals old_ref.
Method set_symbolic_ref Make a ref point at another ref.
Method subkeys Refs present in this container under a base.
Instance Variable path Undocumented
Instance Variable worktree_path Undocumented
Method _remove_packed_ref Undocumented
Instance Variable _packed_refs Undocumented
Instance Variable _peeled_refs Undocumented

Inherited from RefsContainer:

Method __contains__ Undocumented
Method __delitem__ Remove a refname.
Method __getitem__ Get the SHA1 for a reference name.
Method __iter__ Undocumented
Method __setitem__ Set a reference name to point to the given SHA1.
Method as_dict Return the contents of this container as a dictionary.
Method follow Follow a reference name.
Method get_symrefs Get a dict with all symrefs in this container.
Method import_refs Undocumented
Method keys Refs present in this container.
Method read_ref Read a reference without following any references.
Method _check_refname Ensure a refname is valid and lives in refs or is HEAD.
Method _log Undocumented
Instance Variable _logger Undocumented
def __init__(self, path, worktree_path=None, logger=None):

Undocumented

def __repr__(self):

Undocumented

def add_if_new(self, name, ref, committer=None, timestamp=None, timezone=None, message=None):

Add a new reference only if it does not already exist.

This method follows symrefs, and only ensures that the last ref in the chain does not exist.

Returns: True if the add was successful, False otherwise.

Parameters
name:bytesThe refname to set.
ref:bytesThe new sha the refname will refer to.
committerUndocumented
timestampUndocumented
timezoneUndocumented
message:Optional[bytes]Optional message for reflog
def allkeys(self):

All refs present in this container.

def get_packed_refs(self):

Get contents of the packed-refs file.

Returns: Dictionary mapping ref names to SHA1s

Note: Will return an empty dictionary when no packed-refs file is
present.
def get_peeled(self, name):

Return the cached peeled value of a ref, if available.

Returns: The peeled value of the ref. If the ref is known not point to
a tag, this will be the SHA the ref refers to. If the ref may point to a tag, but no cached information is available, None is returned.
Parameters
nameName of the ref to peel
def read_loose_ref(self, name):

Read a reference file and return its contents.

If the reference file a symbolic reference, only read the first line of the file. Otherwise, only read the first 40 bytes.

Returns: The contents of the ref file, or None if the file does not
exist.
Parameters
namethe refname to read, relative to refpath
Raises
IOErrorif any other error occurs
def refpath(self, name):

Return the disk path of a ref.

def remove_if_equals(self, name, old_ref, committer=None, timestamp=None, timezone=None, message=None):

Remove a refname only if it currently equals old_ref.

This method does not follow symbolic references. It can be used to perform an atomic compare-and-delete operation.

Returns: True if the delete was successful, False otherwise.

Parameters
nameThe refname to delete.
old_refThe old sha the refname must refer to, or None to delete unconditionally.
committerUndocumented
timestampUndocumented
timezoneUndocumented
messageOptional message
def set_if_equals(self, name, old_ref, new_ref, committer=None, timestamp=None, timezone=None, message=None):

Set a refname to new_ref only if it currently equals old_ref.

This method follows all symbolic references, and can be used to perform an atomic compare-and-swap operation.

Returns: True if the set was successful, False otherwise.

Parameters
nameThe refname to set.
old_refThe old sha the refname must refer to, or None to set unconditionally.
new_refThe new sha the refname will refer to.
committerUndocumented
timestampUndocumented
timezoneUndocumented
messageSet message for reflog
def set_symbolic_ref(self, name, other, committer=None, timestamp=None, timezone=None, message=None):

Make a ref point at another ref.

Parameters
nameName of the ref to set
otherName of the ref to point at
committerUndocumented
timestampUndocumented
timezoneUndocumented
messageOptional message to describe the change
def subkeys(self, base):

Refs present in this container under a base.

Returns: A set of valid refs in this container under the base; the base
prefix is stripped from the ref names returned.
Parameters
baseThe base to return refs under.
path =

Undocumented

worktree_path =

Undocumented

def _remove_packed_ref(self, name):

Undocumented

_packed_refs =

Undocumented

_peeled_refs: dict =

Undocumented