##// END OF EJS Templates
graphlog: reduce duplication in --follow code
Patrick Mezard -
r16433:e38b2993 default
parent child Browse files
Show More
@@ -297,10 +297,10 b' def _makelogrevset(repo, pats, opts, rev'
297 opts = dict(opts)
297 opts = dict(opts)
298 # follow or not follow?
298 # follow or not follow?
299 follow = opts.get('follow') or opts.get('follow_first')
299 follow = opts.get('follow') or opts.get('follow_first')
300 followfirst = opts.get('follow_first')
300 followfirst = opts.get('follow_first') and 1 or 0
301 # --follow with FILE behaviour depends on revs...
301 # --follow with FILE behaviour depends on revs...
302 startrev = revs[0]
302 startrev = revs[0]
303 followdescendants = len(revs) > 1 and revs[0] < revs[1]
303 followdescendants = (len(revs) > 1 and revs[0] < revs[1]) and 1 or 0
304
304
305 # branch and only_branch are really aliases and must be handled at
305 # branch and only_branch are really aliases and must be handled at
306 # the same time
306 # the same time
@@ -349,22 +349,13 b' def _makelogrevset(repo, pats, opts, rev'
349 opts['_matchfiles'] = matchargs
349 opts['_matchfiles'] = matchargs
350 else:
350 else:
351 if follow:
351 if follow:
352 if followfirst:
352 fpats = ('_patsfollow', '_patsfollowfirst')
353 if pats:
353 fnopats = (('_ancestors', '_fancestors'),
354 opts['_patsfollowfirst'] = list(pats)
354 ('_descendants', '_fdescendants'))
355 else:
355 if pats:
356 if followdescendants:
356 opts[fpats[followfirst]] = list(pats)
357 opts['_fdescendants'] = str(startrev)
358 else:
359 opts['_fancestors'] = str(startrev)
360 else:
357 else:
361 if pats:
358 opts[fnopats[followdescendants][followfirst]] = str(startrev)
362 opts['_patsfollow'] = list(pats)
363 else:
364 if followdescendants:
365 opts['_descendants'] = str(startrev)
366 else:
367 opts['_ancestors'] = str(startrev)
368 else:
359 else:
369 opts['_patslog'] = list(pats)
360 opts['_patslog'] = list(pats)
370
361
General Comments 0
You need to be logged in to leave comments. Login now