mercurial/merge.py
changeset 34547 81aebcc73beb
parent 34545 1913162854f2
child 34548 b4955650eb57
equal deleted inserted replaced
34546:e4cf957bf7ce 34547:81aebcc73beb
  1241             repo.ui.debug("removing %s\n" % f)
  1241             repo.ui.debug("removing %s\n" % f)
  1242             wctx[f].audit()
  1242             wctx[f].audit()
  1243             wctx[f].remove()
  1243             wctx[f].remove()
  1244 
  1244 
  1245     numupdates = sum(len(l) for m, l in actions.items() if m != 'k')
  1245     numupdates = sum(len(l) for m, l in actions.items() if m != 'k')
       
  1246     z = 0
  1246 
  1247 
  1247     if [a for a in actions['r'] if a[0] == '.hgsubstate']:
  1248     if [a for a in actions['r'] if a[0] == '.hgsubstate']:
  1248         subrepo.submerge(repo, wctx, mctx, wctx, overwrite, labels)
  1249         subrepo.submerge(repo, wctx, mctx, wctx, overwrite, labels)
  1249 
  1250 
  1250     # remove in parallel (must come first)
  1251     # record path conflicts
  1251     z = 0
  1252     for f, args, msg in actions['p']:
       
  1253         f1, fo = args
       
  1254         s = repo.ui.status
       
  1255         s(_("%s: path conflict - a file or link has the same name as a "
       
  1256             "directory\n") % f)
       
  1257         if fo == 'l':
       
  1258             s(_("the local file has been renamed to %s\n") % f1)
       
  1259         else:
       
  1260             s(_("the remote file has been renamed to %s\n") % f1)
       
  1261         s(_("resolve manually then use 'hg resolve --mark %s'\n") % f)
       
  1262         ms.addpath(f, f1, fo)
       
  1263         z += 1
       
  1264         progress(_updating, z, item=f, total=numupdates, unit=_files)
       
  1265 
       
  1266     # remove in parallel (must come before getting)
  1252     prog = worker.worker(repo.ui, 0.001, batchremove, (repo, wctx),
  1267     prog = worker.worker(repo.ui, 0.001, batchremove, (repo, wctx),
  1253                          actions['r'])
  1268                          actions['r'])
  1254     for i, item in prog:
  1269     for i, item in prog:
  1255         z += i
  1270         z += i
  1256         progress(_updating, z, item=item, total=numupdates, unit=_files)
  1271         progress(_updating, z, item=item, total=numupdates, unit=_files)
  1696                     actionbyfile[f] = ('g', (flags, False), "prompt recreating")
  1711                     actionbyfile[f] = ('g', (flags, False), "prompt recreating")
  1697                 else:
  1712                 else:
  1698                     del actionbyfile[f]
  1713                     del actionbyfile[f]
  1699 
  1714 
  1700         # Convert to dictionary-of-lists format
  1715         # Convert to dictionary-of-lists format
  1701         actions = dict((m, []) for m in 'a am f g cd dc r dm dg m e k'.split())
  1716         actions = dict((m, [])
       
  1717                        for m in 'a am f g cd dc r dm dg m e k p'.split())
  1702         for f, (m, args, msg) in actionbyfile.iteritems():
  1718         for f, (m, args, msg) in actionbyfile.iteritems():
  1703             if m not in actions:
  1719             if m not in actions:
  1704                 actions[m] = []
  1720                 actions[m] = []
  1705             actions[m].append((f, args, msg))
  1721             actions[m].append((f, args, msg))
  1706 
  1722