comparison hgext/graphlog.py @ 16181:1fd352aa08fc

graphlog: evaluate FILE/-I/-X filesets on the working dir This subtlety is not documented yet but: - pats/--include/--exclude filesets are evaluated against the working directory - --rev filesets are reevaluated against every revisions
author Patrick Mezard <patrick@mezard.eu>
date Sun, 26 Feb 2012 17:10:51 +0100
parents 46a96cc830c2
children 6863caf01daa
comparison
equal deleted inserted replaced
16180:46a96cc830c2 16181:1fd352aa08fc
301 raise util.Abort(_('can only follow copies/renames for explicit ' 301 raise util.Abort(_('can only follow copies/renames for explicit '
302 'filenames')) 302 'filenames'))
303 # pats/include/exclude cannot be represented as separate 303 # pats/include/exclude cannot be represented as separate
304 # revset expressions as their filtering logic applies at file 304 # revset expressions as their filtering logic applies at file
305 # level. For instance "-I a -X a" matches a revision touching 305 # level. For instance "-I a -X a" matches a revision touching
306 # "a" and "b" while "file(a) and not file(b)" does not. 306 # "a" and "b" while "file(a) and not file(b)" does
307 matchargs = [] 307 # not. Besides, filesets are evaluated against the working
308 # directory.
309 matchargs = ['r:']
308 for p in pats: 310 for p in pats:
309 matchargs.append('p:' + p) 311 matchargs.append('p:' + p)
310 for p in opts.get('include', []): 312 for p in opts.get('include', []):
311 matchargs.append('i:' + p) 313 matchargs.append('i:' + p)
312 for p in opts.get('exclude', []): 314 for p in opts.get('exclude', []):