mercurial/merge.py
changeset 13158 9e7e24052745
parent 12757 62c8f7691bc3
child 13162 115a9760c382
equal deleted inserted replaced
13157:82f840109f76 13158:9e7e24052745
   522             _checkcollision(p2)
   522             _checkcollision(p2)
   523         action += _forgetremoved(wc, p2, branchmerge)
   523         action += _forgetremoved(wc, p2, branchmerge)
   524         action += manifestmerge(repo, wc, p2, pa, overwrite, partial)
   524         action += manifestmerge(repo, wc, p2, pa, overwrite, partial)
   525 
   525 
   526         ### apply phase
   526         ### apply phase
   527         if not branchmerge: # just jump to the new rev
   527         if not branchmerge or fastforward: # just jump to the new rev
   528             fp1, fp2, xp1, xp2 = fp2, nullid, xp2, ''
   528             fp1, fp2, xp1, xp2 = fp2, nullid, xp2, ''
   529         if not partial:
   529         if not partial:
   530             repo.hook('preupdate', throw=True, parent1=xp1, parent2=xp2)
   530             repo.hook('preupdate', throw=True, parent1=xp1, parent2=xp2)
   531 
   531 
   532         stats = applyupdates(repo, action, wc, p2, pa)
   532         stats = applyupdates(repo, action, wc, p2, pa)
   533 
   533 
   534         if not partial:
   534         if not partial:
   535             repo.dirstate.setparents(fp1, fp2)
   535             repo.dirstate.setparents(fp1, fp2)
   536             recordupdates(repo, action, branchmerge)
   536             recordupdates(repo, action, branchmerge and not fastforward)
   537             if not branchmerge and not fastforward:
   537             if not branchmerge and not fastforward:
   538                 repo.dirstate.setbranch(p2.branch())
   538                 repo.dirstate.setbranch(p2.branch())
   539     finally:
   539     finally:
   540         wlock.release()
   540         wlock.release()
   541 
   541