Skip to content

Commit ef32490

Browse files
authored
Merge pull request #1305 from gitpython-developers/typing
Improve types of objects/
2 parents 37fa31d + a5a05d1 commit ef32490

File tree

3 files changed

+7
-6
lines changed

3 files changed

+7
-6
lines changed

git/objects/commit.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@ def __init__(self, repo: 'Repo', binsha: bytes, tree: Union[Tree, None] = None,
128128
as what time.altzone returns. The sign is inverted compared to git's
129129
UTC timezone."""
130130
super(Commit, self).__init__(repo, binsha)
131+
self.binsha = binsha
131132
if tree is not None:
132133
assert isinstance(tree, Tree), "Tree needs to be a Tree instance, was %s" % type(tree)
133134
if tree is not None:

git/objects/submodule/base.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -563,6 +563,7 @@ def update(self, recursive: bool = False, init: bool = True, to_latest_revision:
563563
progress.update(op, i, len_rmts, prefix + "Done fetching remote of submodule %r" % self.name)
564564
# END fetch new data
565565
except InvalidGitRepositoryError:
566+
mrepo = None
566567
if not init:
567568
return self
568569
# END early abort if init is not allowed
@@ -603,7 +604,7 @@ def update(self, recursive: bool = False, init: bool = True, to_latest_revision:
603604

604605
# make sure HEAD is not detached
605606
mrepo.head.set_reference(local_branch, logmsg="submodule: attaching head to %s" % local_branch)
606-
mrepo.head.ref.set_tracking_branch(remote_branch)
607+
mrepo.head.reference.set_tracking_branch(remote_branch)
607608
except (IndexError, InvalidGitRepositoryError):
608609
log.warning("Failed to checkout tracking branch %s", self.branch_path)
609610
# END handle tracking branch
@@ -629,13 +630,14 @@ def update(self, recursive: bool = False, init: bool = True, to_latest_revision:
629630
if mrepo is not None and to_latest_revision:
630631
msg_base = "Cannot update to latest revision in repository at %r as " % mrepo.working_dir
631632
if not is_detached:
632-
rref = mrepo.head.ref.tracking_branch()
633+
rref = mrepo.head.reference.tracking_branch()
633634
if rref is not None:
634635
rcommit = rref.commit
635636
binsha = rcommit.binsha
636637
hexsha = rcommit.hexsha
637638
else:
638-
log.error("%s a tracking branch was not set for local branch '%s'", msg_base, mrepo.head.ref)
639+
log.error("%s a tracking branch was not set for local branch '%s'",
640+
msg_base, mrepo.head.reference)
639641
# END handle remote ref
640642
else:
641643
log.error("%s there was no local tracking branch", msg_base)

git/objects/submodule/root.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@
22
Submodule,
33
UpdateProgress
44
)
5-
from .util import (
6-
find_first_remote_branch
7-
)
5+
from .util import find_first_remote_branch
86
from git.exc import InvalidGitRepositoryError
97
import git
108

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy