clone: avoid using repo.lookup() with binary nodeid
The code in hg.clone() is a bit of a mess, but it seems like the
"checkout" variable is always a binary nodeid (tests pass when run
with "assert len(checkout) == 20" before the
repo.lookup()). repo.lookup() will soon work only with string inputs,
so we need remove this use.
Differential Revision: https://phab.mercurial-scm.org/D3191
--- a/mercurial/hg.py Sun Apr 08 08:41:58 2018 -0700
+++ b/mercurial/hg.py Sun Apr 08 08:53:43 2018 -0700
@@ -711,9 +711,9 @@
uprev = None
status = None
if checkout is not None:
- try:
- uprev = destrepo.lookup(checkout)
- except error.RepoLookupError:
+ if checkout in destrepo:
+ uprev = checkout
+ else:
if update is not True:
try:
uprev = destrepo.lookup(update)