1531 and isinstance(ctx2, context.changectx)): |
1531 and isinstance(ctx2, context.changectx)): |
1532 reversed = True |
1532 reversed = True |
1533 ctx1, ctx2 = ctx2, ctx1 |
1533 ctx1, ctx2 = ctx2, ctx1 |
1534 |
1534 |
1535 working = ctx2.rev() is None |
1535 working = ctx2.rev() is None |
1536 parentworking = working and ctx1 == self['.'] |
|
1537 match = match or matchmod.always(self.root, self.getcwd()) |
|
1538 listignored, listclean, listunknown = ignored, clean, unknown |
1536 listignored, listclean, listunknown = ignored, clean, unknown |
1539 |
1537 |
1540 # load earliest manifest first for caching reasons |
1538 # load earliest manifest first for caching reasons |
1541 if not working and ctx2.rev() < ctx1.rev(): |
1539 if not working and ctx2.rev() < ctx1.rev(): |
1542 ctx2.manifest() |
1540 ctx2.manifest() |
1543 |
1541 |
1544 if not parentworking: |
|
1545 def bad(f, msg): |
|
1546 # 'f' may be a directory pattern from 'match.files()', |
|
1547 # so 'f not in ctx1' is not enough |
|
1548 if f not in ctx1 and f not in ctx1.dirs(): |
|
1549 self.ui.warn('%s: %s\n' % (self.dirstate.pathto(f), msg)) |
|
1550 match.bad = bad |
|
1551 |
|
1552 r = [[], [], [], [], [], [], []] |
1542 r = [[], [], [], [], [], [], []] |
|
1543 match = ctx2._matchstatus(ctx1, r, match, listignored, listclean, |
|
1544 listunknown) |
1553 r = ctx2._prestatus(ctx1, r, match, listignored, listclean, listunknown) |
1545 r = ctx2._prestatus(ctx1, r, match, listignored, listclean, listunknown) |
1554 r = ctx2._buildstatus(ctx1, r, match, listignored, listclean, |
1546 r = ctx2._buildstatus(ctx1, r, match, listignored, listclean, |
1555 listunknown) |
1547 listunknown) |
1556 r = ctx2._poststatus(ctx1, r, match, listignored, listclean, |
1548 r = ctx2._poststatus(ctx1, r, match, listignored, listclean, |
1557 listunknown) |
1549 listunknown) |