mercurial/localrepo.py
branchstable
changeset 19515 14c91b18d798
parent 19291 93635f69c93b
child 19569 00140039bd8f
child 19846 9789670992d6
equal deleted inserted replaced
19514:cfdae231ba78 19515:14c91b18d798
  1949             if locallock is not None:
  1949             if locallock is not None:
  1950                 locallock.release()
  1950                 locallock.release()
  1951 
  1951 
  1952         self.ui.debug("checking for updated bookmarks\n")
  1952         self.ui.debug("checking for updated bookmarks\n")
  1953         rb = remote.listkeys('bookmarks')
  1953         rb = remote.listkeys('bookmarks')
       
  1954         revnums = map(unfi.changelog.rev, revs or [])
       
  1955         ancestors = [
       
  1956             a for a in unfi.changelog.ancestors(revnums, inclusive=True)]
  1954         for k in rb.keys():
  1957         for k in rb.keys():
  1955             if k in unfi._bookmarks:
  1958             if k in unfi._bookmarks:
  1956                 nr, nl = rb[k], hex(self._bookmarks[k])
  1959                 nr, nl = rb[k], hex(self._bookmarks[k])
  1957                 if nr in unfi:
  1960                 if nr in unfi:
  1958                     cr = unfi[nr]
  1961                     cr = unfi[nr]
  1959                     cl = unfi[nl]
  1962                     cl = unfi[nl]
  1960                     if bookmarks.validdest(unfi, cr, cl):
  1963                     if bookmarks.validdest(unfi, cr, cl):
       
  1964                         if ancestors and cl.rev() not in ancestors:
       
  1965                             continue
  1961                         r = remote.pushkey('bookmarks', k, nr, nl)
  1966                         r = remote.pushkey('bookmarks', k, nr, nl)
  1962                         if r:
  1967                         if r:
  1963                             self.ui.status(_("updating bookmark %s\n") % k)
  1968                             self.ui.status(_("updating bookmark %s\n") % k)
  1964                         else:
  1969                         else:
  1965                             self.ui.warn(_('updating bookmark %s'
  1970                             self.ui.warn(_('updating bookmark %s'