mirror of
https://github.com/facebook/sapling.git
synced 2024-10-09 00:14:35 +03:00
revrange: build spanset from x:y range
This slightly improves the performance in the optimal case: % hg log -R mozilla-central -r0:tip -l1 --time (before) time: real 0.050 secs (user 0.040+0.000 sys 0.010+0.000) (after) time: real 0.020 secs (user 0.000+0.000 sys 0.010+0.000)
This commit is contained in:
parent
6bf5f80705
commit
d0b6a92234
@ -737,8 +737,10 @@ def revrange(repo, revs):
|
||||
end = revfix(repo, end, len(repo) - 1)
|
||||
if end == nullrev and start < 0:
|
||||
start = nullrev
|
||||
rangeiter = repo.changelog.revs(start, end)
|
||||
l = revset.baseset(rangeiter)
|
||||
if start < end:
|
||||
l = revset.spanset(repo, start, end + 1)
|
||||
else:
|
||||
l = revset.spanset(repo, start, end - 1)
|
||||
subsets.append(l)
|
||||
continue
|
||||
elif spec and spec in repo: # single unquoted rev
|
||||
|
Loading…
Reference in New Issue
Block a user