Mercurial > public > mercurial-scm > hg
diff mercurial/scmutil.py @ 37504:901e749ca0e1
context: extract partial nodeid lookup method to scmutil
We will add another caller soon, and there's a non-obvious reason to
use the unfiltered repo that we don't want to copy across the code
base.
Differential Revision: https://phab.mercurial-scm.org/D3189
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Sun, 08 Apr 2018 08:06:34 -0700 |
parents | bbd240f81ac5 |
children | 1c09481acdcc |
line wrap: on
line diff
--- a/mercurial/scmutil.py Mon Mar 19 20:23:27 2018 +0900 +++ b/mercurial/scmutil.py Sun Apr 08 08:06:34 2018 -0700 @@ -433,6 +433,15 @@ hexfunc = short return '%d:%s' % (rev, hexfunc(node)) +def resolvepartialhexnodeid(repo, prefix): + # Uses unfiltered repo because it's faster when then prefix is ambiguous/ + # This matches the "shortest" template function. + node = repo.unfiltered().changelog._partialmatch(prefix) + if node is None: + return + repo.changelog.rev(node) # make sure node isn't filtered + return node + def isrevsymbol(repo, symbol): try: revsymbol(repo, symbol)