hgext/rebase.py
branchstable
changeset 18514 2a1fac3650a5
parent 18512 22978b82ab4b
child 18516 9fbeb61b8ad2
equal deleted inserted replaced
18513:37ce336ab2dd 18514:2a1fac3650a5
   314             if collapsef:
   314             if collapsef:
   315                 collapsedas = newrev
   315                 collapsedas = newrev
   316             clearrebased(ui, repo, state, skipped, collapsedas)
   316             clearrebased(ui, repo, state, skipped, collapsedas)
   317 
   317 
   318         if currentbookmarks:
   318         if currentbookmarks:
   319             updatebookmarks(repo, nstate, currentbookmarks, **opts)
   319             updatebookmarks(repo, dest, nstate, currentbookmarks)
   320 
   320 
   321         clearstatus(repo)
   321         clearstatus(repo)
   322         ui.note(_("rebase completed\n"))
   322         ui.note(_("rebase completed\n"))
   323         util.unlinkpath(repo.sjoin('undo'), ignoremissing=True)
   323         util.unlinkpath(repo.sjoin('undo'), ignoremissing=True)
   324         if skipped:
   324         if skipped:
   491                      if mq.guard_re.split(s, 1)[0] not in skippedpatches]
   491                      if mq.guard_re.split(s, 1)[0] not in skippedpatches]
   492         mq.fullseries[:] = newseries
   492         mq.fullseries[:] = newseries
   493         mq.seriesdirty = True
   493         mq.seriesdirty = True
   494         mq.savedirty()
   494         mq.savedirty()
   495 
   495 
   496 def updatebookmarks(repo, nstate, originalbookmarks, **opts):
   496 def updatebookmarks(repo, dest, nstate, originalbookmarks):
   497     'Move bookmarks to their correct changesets'
   497     'Move bookmarks to their correct changesets, and delete divergent ones'
       
   498     destnode = dest.node()
   498     marks = repo._bookmarks
   499     marks = repo._bookmarks
   499     for k, v in originalbookmarks.iteritems():
   500     for k, v in originalbookmarks.iteritems():
   500         if v in nstate:
   501         if v in nstate:
   501             # update the bookmarks for revs that have moved
   502             # update the bookmarks for revs that have moved
   502             marks[k] = nstate[v]
   503             marks[k] = nstate[v]
       
   504             bookmarks.deletedivergent(repo, [destnode], k)
   503 
   505 
   504     marks.write()
   506     marks.write()
   505 
   507 
   506 def storestatus(repo, originalwd, target, state, collapse, keep, keepbranches,
   508 def storestatus(repo, originalwd, target, state, collapse, keep, keepbranches,
   507                                                                 external):
   509                                                                 external):