summaryrefslogtreecommitdiff
path: root/lib/git/refs.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/git/refs.py')
-rw-r--r--lib/git/refs.py10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/git/refs.py b/lib/git/refs.py
index 3c9eb817..a4d7bbb1 100644
--- a/lib/git/refs.py
+++ b/lib/git/refs.py
@@ -10,7 +10,7 @@ from objects.base import Object
from objects.utils import get_object_type_by_name
from utils import LazyMixin, Iterable
-class Ref(LazyMixin, Iterable):
+class Reference(LazyMixin, Iterable):
"""
Represents a named reference to any object
"""
@@ -71,8 +71,8 @@ class Ref(LazyMixin, Iterable):
always point to the actual object as it gets re-created on each query
"""
# have to be dynamic here as we may be a tag which can point to anything
- hexsha, typename, size = self.repo.git.get_object_header(self.path)
- return get_object_type_by_name(typename)(self.repo, hexsha)
+ # Our path will be resolved to the hexsha which will be used accordingly
+ return Object(self.repo, self.path)
@classmethod
def iter_items(cls, repo, common_path = "refs", **kwargs):
@@ -138,7 +138,7 @@ class Ref(LazyMixin, Iterable):
# return cls(repo, full_path, obj)
-class Head(Ref):
+class Head(Reference):
"""
A Head is a named reference to a Commit. Every Head instance contains a name
and a Commit object.
@@ -181,7 +181,7 @@ class Head(Ref):
-class TagRef(Ref):
+class TagRef(Reference):
"""
Class representing a lightweight tag reference which either points to a commit
or to a tag object. In the latter case additional information, like the signature