From 720fa417c7375f4d19612fa8f2a07edee427044c Mon Sep 17 00:00:00 2001 From: Pedro Alvarez Date: Fri, 5 Aug 2016 12:06:32 +0000 Subject: Use rev-list -1 to get ref sha1 Change-Id: I800edd478b1ea0afa495e765583989094fb106f0 --- morphlib/gitdir.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/morphlib/gitdir.py b/morphlib/gitdir.py index f1286b25..9ba0fd39 100644 --- a/morphlib/gitdir.py +++ b/morphlib/gitdir.py @@ -602,6 +602,13 @@ class GitDirectory(object): except cliapp.AppException as e: raise InvalidRefError(self, ref) + def _rev_list_1(self, ref): + try: + return morphlib.git.gitcmd(self._runcmd, 'rev-list', + '-1', ref).strip() + except cliapp.AppException as e: # pragma: no cover + raise InvalidRefError(self, ref) + def get_upstream_of_branch(self, branch): # pragma: no cover try: out = morphlib.git.gitcmd( @@ -622,7 +629,7 @@ class GitDirectory(object): raise def resolve_ref_to_commit(self, ref): - return self._rev_parse('%s^{commit}' % ref) + return self._rev_list_1('%s^{commit}' % ref) def resolve_ref_to_tree(self, ref): return self._rev_parse('%s^{tree}' % ref) -- cgit v1.2.1