hgext/rebase.py
changeset 37025 0782ac132a41
parent 37021 c83e2736c6de
child 37027 81b35d275a60
equal deleted inserted replaced
37024:7c18798fc24d 37025:0782ac132a41
   838 
   838 
   839             retcode = rbsrt._prepareabortorcontinue(abortf)
   839             retcode = rbsrt._prepareabortorcontinue(abortf)
   840             if retcode is not None:
   840             if retcode is not None:
   841                 return retcode
   841                 return retcode
   842         else:
   842         else:
   843             destmap = _definedestmap(ui, repo, rbsrt, destf, srcf, basef, revf,
   843             destmap = _definedestmap(ui, repo, inmemory, destf, srcf, basef,
   844                                      destspace=destspace)
   844                                      revf, destspace=destspace)
   845             retcode = rbsrt._preparenewrebase(destmap)
   845             retcode = rbsrt._preparenewrebase(destmap)
   846             if retcode is not None:
   846             if retcode is not None:
   847                 return retcode
   847                 return retcode
   848             storecollapsemsg(repo, rbsrt.collapsemsg)
   848             storecollapsemsg(repo, rbsrt.collapsemsg)
   849 
   849 
   864                 dsguard = dirstateguard.dirstateguard(repo, 'rebase')
   864                 dsguard = dirstateguard.dirstateguard(repo, 'rebase')
   865             with util.acceptintervention(dsguard):
   865             with util.acceptintervention(dsguard):
   866                 rbsrt._performrebase(tr)
   866                 rbsrt._performrebase(tr)
   867                 rbsrt._finishrebase()
   867                 rbsrt._finishrebase()
   868 
   868 
   869 def _definedestmap(ui, repo, rbsrt, destf=None, srcf=None, basef=None,
   869 def _definedestmap(ui, repo, inmemory, destf=None, srcf=None, basef=None,
   870                    revf=None, destspace=None):
   870                    revf=None, destspace=None):
   871     """use revisions argument to define destmap {srcrev: destrev}"""
   871     """use revisions argument to define destmap {srcrev: destrev}"""
   872     if revf is None:
   872     if revf is None:
   873         revf = []
   873         revf = []
   874 
   874 
   879     if revf and basef:
   879     if revf and basef:
   880         raise error.Abort(_('cannot specify both a revision and a base'))
   880         raise error.Abort(_('cannot specify both a revision and a base'))
   881     if revf and srcf:
   881     if revf and srcf:
   882         raise error.Abort(_('cannot specify both a revision and a source'))
   882         raise error.Abort(_('cannot specify both a revision and a source'))
   883 
   883 
   884     if not rbsrt.inmemory:
   884     if not inmemory:
   885         cmdutil.checkunfinished(repo)
   885         cmdutil.checkunfinished(repo)
   886         cmdutil.bailifchanged(repo)
   886         cmdutil.bailifchanged(repo)
   887 
   887 
   888     if ui.configbool('commands', 'rebase.requiredest') and not destf:
   888     if ui.configbool('commands', 'rebase.requiredest') and not destf:
   889         raise error.Abort(_('you must specify a destination'),
   889         raise error.Abort(_('you must specify a destination'),
   957                           ('+'.join(bytes(repo[r]) for r in base), dest))
   957                           ('+'.join(bytes(repo[r]) for r in base), dest))
   958             return None
   958             return None
   959 
   959 
   960     rebasingwcp = repo['.'].rev() in rebaseset
   960     rebasingwcp = repo['.'].rev() in rebaseset
   961     ui.log("rebase", "", rebase_rebasing_wcp=rebasingwcp)
   961     ui.log("rebase", "", rebase_rebasing_wcp=rebasingwcp)
   962     if rbsrt.inmemory and rebasingwcp:
   962     if inmemory and rebasingwcp:
   963         # Check these since we did not before.
   963         # Check these since we did not before.
   964         cmdutil.checkunfinished(repo)
   964         cmdutil.checkunfinished(repo)
   965         cmdutil.bailifchanged(repo)
   965         cmdutil.bailifchanged(repo)
   966 
   966 
   967     if not destf:
   967     if not destf: