568 """ |
568 """ |
569 Considers any actions that care about the presence of conflicting unknown |
569 Considers any actions that care about the presence of conflicting unknown |
570 files. For some actions, the result is to abort; for others, it is to |
570 files. For some actions, the result is to abort; for others, it is to |
571 choose a different action. |
571 choose a different action. |
572 """ |
572 """ |
573 aborts = [] |
573 conflicts = [] |
574 if not force: |
574 if not force: |
575 for f, (m, args, msg) in actions.iteritems(): |
575 for f, (m, args, msg) in actions.iteritems(): |
576 if m in ('c', 'dc'): |
576 if m in ('c', 'dc'): |
577 if _checkunknownfile(repo, wctx, mctx, f): |
577 if _checkunknownfile(repo, wctx, mctx, f): |
578 aborts.append(f) |
578 conflicts.append(f) |
579 elif m == 'dg': |
579 elif m == 'dg': |
580 if _checkunknownfile(repo, wctx, mctx, f, args[0]): |
580 if _checkunknownfile(repo, wctx, mctx, f, args[0]): |
581 aborts.append(f) |
581 conflicts.append(f) |
582 |
582 |
583 for f in sorted(aborts): |
583 for f in sorted(conflicts): |
584 repo.ui.warn(_("%s: untracked file differs\n") % f) |
584 repo.ui.warn(_("%s: untracked file differs\n") % f) |
585 if aborts: |
585 if conflicts: |
586 raise error.Abort(_("untracked files in working directory differ " |
586 raise error.Abort(_("untracked files in working directory differ " |
587 "from files in requested revision")) |
587 "from files in requested revision")) |
588 |
588 |
589 for f, (m, args, msg) in actions.iteritems(): |
589 for f, (m, args, msg) in actions.iteritems(): |
590 if m == 'c': |
590 if m == 'c': |