project: replace GetHeadPath with new git helper

Change-Id: I79931cb484508c78f6a8b8413d05b85ed8bc6d98
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/256533
Reviewed-by: David Pursehouse <dpursehouse@collab.net>
Tested-by: Mike Frysinger <vapier@google.com>
This commit is contained in:
Mike Frysinger 2020-02-23 23:24:40 -05:00
parent 4b0eb5a441
commit 9f91c4395a

View File

@ -1952,18 +1952,6 @@ class Project(object):
return True
# Branch Management ##
def GetHeadPath(self):
"""Return the full path to the HEAD ref."""
dotgit = os.path.join(self.worktree, '.git')
if os.path.isfile(dotgit):
# Git worktrees use a "gitdir:" syntax to point to the scratch space.
with open(dotgit) as fp:
setting = fp.read()
assert setting.startswith('gitdir:')
gitdir = setting.split(':', 1)[1].strip()
dotgit = os.path.join(self.worktree, gitdir)
return os.path.join(dotgit, HEAD)
def StartBranch(self, name, branch_merge='', revision=None):
"""Create a new branch off the manifest's revision.
"""
@ -2046,7 +2034,8 @@ class Project(object):
# Same revision; just update HEAD to point to the new
# target branch, but otherwise take no other action.
#
_lwrite(self.GetHeadPath(), 'ref: %s%s\n' % (R_HEADS, name))
_lwrite(self.work_git.GetDotgitPath(subpath=HEAD),
'ref: %s%s\n' % (R_HEADS, name))
return True
return GitCommand(self,
@ -2079,7 +2068,7 @@ class Project(object):
revid = self.GetRevisionId(all_refs)
if head == revid:
_lwrite(self.GetHeadPath(), '%s\n' % revid)
_lwrite(self.work_git.GetDotgitPath(subpath=HEAD), '%s\n' % revid)
else:
self._Checkout(revid, quiet=True)