Mercurial > public > mercurial-scm > hg
comparison mercurial/cmdutil.py @ 16070:f11eee00c652 stable
forget: show warning messages for forgetting in subrepo correctly
in 'cmdutil.forget()':
for f in match.files():
if match.exact(f) or not explicitonly:
....
is equal to:
for f in match.files():
if True:
....
because 'f' from 'match.files()' should 'match.exact(f)':
- 'match.files()' returns 'self._files'
- 'match.exact(f)' examines 'f in self._fmap',
- 'self._fmap' of match is 'set(self._files)'
then, 'explicitonly' wants to suppress warning messges, if it is true
(= 'cmdutil.forget()' is invoked from 'subrepo.forget()').
so, current code should be fixed as:
if not explicitonly:
for f in match.files():
....
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Mon, 06 Feb 2012 14:37:49 +0900 |
parents | 2bd54ffaa27e |
children | f7e0d95d0a0b |
comparison
equal
deleted
inserted
replaced
16069:f680ed10e2c4 | 16070:f11eee00c652 |
---|---|
1222 forgot.extend([subpath + '/' + f for f in subforgot]) | 1222 forgot.extend([subpath + '/' + f for f in subforgot]) |
1223 except error.LookupError: | 1223 except error.LookupError: |
1224 ui.status(_("skipping missing subrepository: %s\n") | 1224 ui.status(_("skipping missing subrepository: %s\n") |
1225 % join(subpath)) | 1225 % join(subpath)) |
1226 | 1226 |
1227 for f in match.files(): | 1227 if not explicitonly: |
1228 if match.exact(f) or not explicitonly: | 1228 for f in match.files(): |
1229 if f not in repo.dirstate and not os.path.isdir(match.rel(join(f))): | 1229 if f not in repo.dirstate and not os.path.isdir(match.rel(join(f))): |
1230 if f not in forgot: | 1230 if f not in forgot: |
1231 if os.path.exists(match.rel(join(f))): | 1231 if os.path.exists(match.rel(join(f))): |
1232 ui.warn(_('not removing %s: ' | 1232 ui.warn(_('not removing %s: ' |
1233 'file is already untracked\n') | 1233 'file is already untracked\n') |