diff -r cb4223c65f79 -r 56a04085c23c mercurial/discovery.py --- a/mercurial/discovery.py Wed Apr 23 13:51:35 2014 +0200 +++ b/mercurial/discovery.py Thu Apr 24 16:47:22 2014 +0200 @@ -313,7 +313,11 @@ newhs = candidate_newhs unsynced = sorted(h for h in unsyncedheads if h not in discardedheads) if unsynced: - heads = ' '.join(short(h) for h in unsynced) + if len(unsynced) <= 4 or repo.ui.verbose: + heads = ' '.join(short(h) for h in unsynced) + else: + heads = (' '.join(short(h) for h in unsynced[:4]) + + ' ' + _("and %s others") % (len(unsynced) - 4)) if branch is None: repo.ui.status(_("remote has heads that are " "not known locally: %s\n") % heads)