Show More
@@ -223,20 +223,22 b' def check_unsupported_flags(opts):' | |||
|
223 | 223 | def revset(pats, opts): |
|
224 | 224 | """Return revset str built of revisions, log options and file patterns. |
|
225 | 225 | """ |
|
226 | opt2revset = dict(only_merges='merge', | |
|
226 | opt2revset = dict(only_merges='merge()', | |
|
227 | 227 | only_branch='branch', |
|
228 | no_merges='not merge', | |
|
228 | no_merges='not merge()', | |
|
229 | 229 | include='file', |
|
230 | 230 | exclude='not file', |
|
231 |
prune='not follow' |
|
|
231 | prune='not follow', | |
|
232 | follow='follow()', | |
|
233 | removed='removes("*")') | |
|
232 | 234 | revset = [] |
|
233 | 235 | for op, val in opts.iteritems(): |
|
234 | 236 | if not val: |
|
235 | 237 | continue |
|
236 | 238 | revop = opt2revset.get(op, op) |
|
237 | if op in ('follow', 'only_merges', 'no_merges'): | |
|
238 |
revset.append('%s |
|
|
239 |
elif op in ('date', |
|
|
239 | if op in ('follow', 'only_merges', 'no_merges', 'removed'): | |
|
240 | revset.append('%s' % revop) | |
|
241 | elif op in ('date',): | |
|
240 | 242 | revset.append('%s(%s)' % (revop, val)) |
|
241 | 243 | elif op in ('include', 'exclude', 'user', 'branch', 'keyword', |
|
242 | 244 | 'prune', 'only_branch'): |
@@ -1405,4 +1405,12 b' Test log -G options' | |||
|
1405 | 1405 | abort: unknown revision 'something nice'! |
|
1406 | 1406 | [255] |
|
1407 | 1407 | $ hg log -G --include 'some file' --exclude 'another file' |
|
1408 | $ hg log -G --follow --template 'nodetag {rev}\n' | grep nodetag | wc -l | |
|
1409 | \s*36 (re) | |
|
1410 | $ hg log -G --removed --template 'nodetag {rev}\n' | grep nodetag | wc -l | |
|
1411 | \s*0 (re) | |
|
1412 | $ hg log -G --only-merges --template 'nodetag {rev}\n' | grep nodetag | wc -l | |
|
1413 | \s*28 (re) | |
|
1414 | $ hg log -G --no-merges --template 'nodetag {rev}\n' | grep nodetag | wc -l | |
|
1415 | \s*9 (re) | |
|
1408 | 1416 |
General Comments 0
You need to be logged in to leave comments.
Login now