diff -r d7b7ec0459c6 -r cce8fbedc82a mercurial/revset.py --- a/mercurial/revset.py Thu Mar 13 17:16:58 2014 -0700 +++ b/mercurial/revset.py Thu Mar 13 17:15:21 2014 -0700 @@ -1492,7 +1492,14 @@ l = [] def invert(s): return "".join(chr(255 - ord(c)) for c in s) - for r in getset(repo, subset, s): + revs = getset(repo, subset, s) + if keys == ["rev"]: + revs.sort() + return revs + elif keys == ["-rev"]: + revs.sort(reverse=True) + return revs + for r in revs: c = repo[r] e = [] for k in keys: