Mercurial > hg
changeset 40084:2cf18f46a1ce
narrow: only walk files within narrowspec also for committed revisions
Narrow has been walking only paths matching the narrowspec when
walking the working copy. We have not done the same filtering when
walking committed revisions (e.g. "hg files -r "), which seems a
little odd. Let's make it consistent.
Differential Revision: https://phab.mercurial-scm.org/D4898
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Fri, 28 Sep 2018 17:09:15 -0700 |
parents | 48a0ce67d67a |
children | aa41f1b01f31 |
files | mercurial/context.py tests/test-narrow-commit.t |
diffstat | 2 files changed, 2 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/context.py Thu Sep 27 23:01:26 2018 -0700 +++ b/mercurial/context.py Fri Sep 28 17:09:15 2018 -0700 @@ -542,7 +542,7 @@ return match.bad(fn, _('no such file in rev %s') % self) - m = matchmod.badmatch(match, bad) + m = matchmod.badmatch(self._repo.narrowmatch(match), bad) return self._manifest.walk(m) def matches(self, match): @@ -1168,7 +1168,7 @@ def walk(self, match): '''Generates matching file names.''' - return sorted(self._repo.dirstate.walk(match, + return sorted(self._repo.dirstate.walk(self._repo.narrowmatch(match), subrepos=sorted(self.substate), unknown=True, ignored=False))
--- a/tests/test-narrow-commit.t Thu Sep 27 23:01:26 2018 -0700 +++ b/tests/test-narrow-commit.t Fri Sep 28 17:09:15 2018 -0700 @@ -91,8 +91,6 @@ created new head $ hg files -r . inside/f1 - outside/f1 (flat !) - outside/ (tree !) $ hg manifest --debug 3f4197b4a11b9016e77ebc47fe566944885fd11b 644 inside/f1 7fb3bb6356d28d4dc352c5ba52d7350a81b6bd46 644 outside/f1 (flat !)