mercurial/merge.py
changeset 3312 5c9806554d65
parent 3309 488d3062d225
child 3313 f009a6f12a59
equal deleted inserted replaced
3311:0708bdb4987a 3312:5c9806554d65
   213                     act("versions differ", f, "m", fmerge(f))
   213                     act("versions differ", f, "m", fmerge(f))
   214                 # are we clobbering?
   214                 # are we clobbering?
   215                 # is remote's version newer?
   215                 # is remote's version newer?
   216                 # or are we going back in time and clean?
   216                 # or are we going back in time and clean?
   217                 elif overwrite or m2[f] != a or (backwards and not n[20:]):
   217                 elif overwrite or m2[f] != a or (backwards and not n[20:]):
   218                     act("remote is newer", f, "g", m2.execf(f), m2[f])
   218                     act("remote is newer", f, "g", m2.execf(f))
   219                 # local is newer, not overwrite, check mode bits
   219                 # local is newer, not overwrite, check mode bits
   220                 elif fmerge(f) != m1.execf(f):
   220                 elif fmerge(f) != m1.execf(f):
   221                     act("update permissions", f, "e", m2.execf(f))
   221                     act("update permissions", f, "e", m2.execf(f))
   222             # contents same, check mode bits
   222             # contents same, check mode bits
   223             elif m1.execf(f) != m2.execf(f):
   223             elif m1.execf(f) != m2.execf(f):
   259                 continue
   259                 continue
   260             # rename case 1, A/A,B/A
   260             # rename case 1, A/A,B/A
   261             act("remote copied", f2, "c", f, f, fmerge(f2, f, f2), False)
   261             act("remote copied", f2, "c", f, f, fmerge(f2, f, f2), False)
   262         elif f in ma:
   262         elif f in ma:
   263             if overwrite or backwards:
   263             if overwrite or backwards:
   264                 act("recreating", f, "g", m2.execf(f), n)
   264                 act("recreating", f, "g", m2.execf(f))
   265             elif n != ma[f]:
   265             elif n != ma[f]:
   266                 if repo.ui.prompt(
   266                 if repo.ui.prompt(
   267                     (_("remote changed %s which local deleted\n") % f) +
   267                     (_("remote changed %s which local deleted\n") % f) +
   268                     _("(k)eep or (d)elete?"), _("[kd]"), _("k")) == _("k"):
   268                     _("(k)eep or (d)elete?"), _("[kd]"), _("k")) == _("k"):
   269                     act("prompt recreating", f, "g", m2.execf(f), n)
   269                     act("prompt recreating", f, "g", m2.execf(f))
   270         else:
   270         else:
   271             act("remote created", f, "g", m2.execf(f), n)
   271             act("remote created", f, "g", m2.execf(f))
   272 
   272 
   273     return action
   273     return action
   274 
   274 
   275 def applyupdates(repo, action, wctx, mctx):
   275 def applyupdates(repo, action, wctx, mctx):
   276     updated, merged, removed, unresolved = 0, 0, 0, 0
   276     updated, merged, removed, unresolved = 0, 0, 0, 0
   302             if filemerge(repo, f, f, f, wctx, mctx, False):
   302             if filemerge(repo, f, f, f, wctx, mctx, False):
   303                 unresolved += 1
   303                 unresolved += 1
   304             util.set_exec(repo.wjoin(f), flag)
   304             util.set_exec(repo.wjoin(f), flag)
   305             merged += 1
   305             merged += 1
   306         elif m == "g": # get
   306         elif m == "g": # get
   307             flag, node = a[2:]
   307             flag = a[2]
   308             repo.ui.note(_("getting %s\n") % f)
   308             repo.ui.note(_("getting %s\n") % f)
   309             t = mctx.filectx(f).data()
   309             t = mctx.filectx(f).data()
   310             repo.wwrite(f, t)
   310             repo.wwrite(f, t)
   311             util.set_exec(repo.wjoin(f), flag)
   311             util.set_exec(repo.wjoin(f), flag)
   312             updated += 1
   312             updated += 1