comparison mercurial/localrepo.py @ 3494:dba3cadef789

Only look up tags and branches as a last resort
author Matt Mackall <mpm@selenic.com>
date Wed, 18 Oct 2006 11:44:56 -0500
parents fcf14d87e0a4
children baa271270829
comparison
equal deleted inserted replaced
3452:fcf14d87e0a4 3494:dba3cadef789
334 def lookup(self, key): 334 def lookup(self, key):
335 if key == '.': 335 if key == '.':
336 key = self.dirstate.parents()[0] 336 key = self.dirstate.parents()[0]
337 if key == nullid: 337 if key == nullid:
338 raise repo.RepoError(_("no revision checked out")) 338 raise repo.RepoError(_("no revision checked out"))
339 n = self.changelog._match(key)
340 if n:
341 return n
339 if key in self.tags(): 342 if key in self.tags():
340 return self.tags()[key] 343 return self.tags()[key]
341 if key in self.branchtags(): 344 if key in self.branchtags():
342 return self.branchtags()[key] 345 return self.branchtags()[key]
343 try: 346 n = self.changelog._partialmatch(key)
344 return self.changelog.lookup(key) 347 if n:
345 except: 348 return n
346 raise repo.RepoError(_("unknown revision '%s'") % key) 349 raise repo.RepoError(_("unknown revision '%s'") % key)
347 350
348 def dev(self): 351 def dev(self):
349 return os.lstat(self.path).st_dev 352 return os.lstat(self.path).st_dev
350 353
351 def local(self): 354 def local(self):