diff -r 1f51b4658f21 -r 1791be8a95c5 mercurial/localrepo.py --- a/mercurial/localrepo.py Thu Feb 02 14:19:48 2017 +0100 +++ b/mercurial/localrepo.py Thu Feb 02 02:56:38 2017 -0800 @@ -1852,6 +1852,10 @@ listsubrepos) def heads(self, start=None): + if start is None: + headrevs = sorted(self.changelog.headrevs(), reverse=True) + return [self.changelog.node(rev) for rev in headrevs] + heads = self.changelog.heads(start) # sort the output in rev descending order return sorted(heads, key=self.changelog.rev, reverse=True)