equal
deleted
inserted
replaced
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', []): |