5520 (new, len(bheads))) |
5520 (new, len(bheads))) |
5521 |
5521 |
5522 cmdutil.summaryhooks(ui, repo) |
5522 cmdutil.summaryhooks(ui, repo) |
5523 |
5523 |
5524 if opts.get('remote'): |
5524 if opts.get('remote'): |
5525 t = [] |
5525 needsincoming, needsoutgoing = True, True |
|
5526 else: |
|
5527 needsincoming, needsoutgoing = False, False |
|
5528 |
|
5529 def getincoming(): |
5526 source, branches = hg.parseurl(ui.expandpath('default')) |
5530 source, branches = hg.parseurl(ui.expandpath('default')) |
5527 sbranch = branches[0] |
5531 sbranch = branches[0] |
5528 other = hg.peer(repo, {}, source) |
5532 other = hg.peer(repo, {}, source) |
5529 revs, checkout = hg.addbranchrevs(repo, other, branches, None) |
5533 revs, checkout = hg.addbranchrevs(repo, other, branches, None) |
5530 if revs: |
5534 if revs: |
5531 revs = [other.lookup(rev) for rev in revs] |
5535 revs = [other.lookup(rev) for rev in revs] |
5532 ui.debug('comparing with %s\n' % util.hidepassword(source)) |
5536 ui.debug('comparing with %s\n' % util.hidepassword(source)) |
5533 repo.ui.pushbuffer() |
5537 repo.ui.pushbuffer() |
5534 commoninc = discovery.findcommonincoming(repo, other, heads=revs) |
5538 commoninc = discovery.findcommonincoming(repo, other, heads=revs) |
5535 _common, incoming, _rheads = commoninc |
|
5536 repo.ui.popbuffer() |
5539 repo.ui.popbuffer() |
5537 if incoming: |
5540 return source, sbranch, other, commoninc, commoninc[1] |
5538 t.append(_('1 or more incoming')) |
5541 |
5539 |
5542 if needsincoming: |
|
5543 source, sbranch, sother, commoninc, incoming = getincoming() |
|
5544 else: |
|
5545 source = sbranch = sother = commoninc = incoming = None |
|
5546 |
|
5547 def getoutgoing(): |
5540 dest, branches = hg.parseurl(ui.expandpath('default-push', 'default')) |
5548 dest, branches = hg.parseurl(ui.expandpath('default-push', 'default')) |
5541 dbranch = branches[0] |
5549 dbranch = branches[0] |
5542 revs, checkout = hg.addbranchrevs(repo, repo, branches, None) |
5550 revs, checkout = hg.addbranchrevs(repo, repo, branches, None) |
5543 if source != dest: |
5551 if source != dest: |
5544 other = hg.peer(repo, {}, dest) |
5552 dother = hg.peer(repo, {}, dest) |
5545 ui.debug('comparing with %s\n' % util.hidepassword(dest)) |
5553 ui.debug('comparing with %s\n' % util.hidepassword(dest)) |
|
5554 else: |
|
5555 dother = sother |
5546 if (source != dest or (sbranch is not None and sbranch != dbranch)): |
5556 if (source != dest or (sbranch is not None and sbranch != dbranch)): |
5547 commoninc = None |
5557 common = None |
|
5558 else: |
|
5559 common = commoninc |
5548 if revs: |
5560 if revs: |
5549 revs = [repo.lookup(rev) for rev in revs] |
5561 revs = [repo.lookup(rev) for rev in revs] |
5550 repo.ui.pushbuffer() |
5562 repo.ui.pushbuffer() |
5551 outgoing = discovery.findcommonoutgoing(repo, other, onlyheads=revs, |
5563 outgoing = discovery.findcommonoutgoing(repo, dother, onlyheads=revs, |
5552 commoninc=commoninc) |
5564 commoninc=common) |
5553 repo.ui.popbuffer() |
5565 repo.ui.popbuffer() |
|
5566 return dest, dbranch, dother, outgoing |
|
5567 |
|
5568 if needsoutgoing: |
|
5569 dest, dbranch, dother, outgoing = getoutgoing() |
|
5570 else: |
|
5571 dest = dbranch = dother = outgoing = None |
|
5572 |
|
5573 if opts.get('remote'): |
|
5574 t = [] |
|
5575 if incoming: |
|
5576 t.append(_('1 or more incoming')) |
5554 o = outgoing.missing |
5577 o = outgoing.missing |
5555 if o: |
5578 if o: |
5556 t.append(_('%d outgoing') % len(o)) |
5579 t.append(_('%d outgoing') % len(o)) |
|
5580 other = dother or sother |
5557 if 'bookmarks' in other.listkeys('namespaces'): |
5581 if 'bookmarks' in other.listkeys('namespaces'): |
5558 lmarks = repo.listkeys('bookmarks') |
5582 lmarks = repo.listkeys('bookmarks') |
5559 rmarks = other.listkeys('bookmarks') |
5583 rmarks = other.listkeys('bookmarks') |
5560 diff = set(rmarks) - set(lmarks) |
5584 diff = set(rmarks) - set(lmarks) |
5561 if len(diff) > 0: |
5585 if len(diff) > 0: |