# HG changeset patch # User Siddharth Agarwal # Date 1412118079 25200 # Node ID 1257cc6c1a2f23eb574737ab5774c8fad1fc0acd # Parent ec47d4fde26db0d76d087ca74825d115d2b9486f files: cache repo.dirstate For a large repo, 'hg files' goes from 2.27 seconds to 1.92. diff -r ec47d4fde26d -r 1257cc6c1a2f mercurial/commands.py --- a/mercurial/commands.py Tue Sep 30 15:21:35 2014 -0700 +++ b/mercurial/commands.py Tue Sep 30 16:01:19 2014 -0700 @@ -3219,8 +3219,9 @@ fmt = '%s' + end m = scmutil.match(ctx, pats, opts) + ds = repo.dirstate for f in ctx.matches(m): - if rev is None and repo.dirstate[f] == 'r': + if rev is None and ds[f] == 'r': continue fm.startitem() if ui.verbose: