comparison mercurial/cmdutil.py @ 24064:c260887cdbcd

log: fix --follow null parent not to include revision 0 If p1 is null, ':.' is translated as '0:null'. But rangeset can't handle null, only revision 0 was visible. Because 'null' should not be listed implicitly, "log --follow" (without -r) should be empty if p1 is null. Test of "hg grep -f" is added for cmdutil.walkchangerevs().
author Yuya Nishihara <yuya@tcha.org>
date Fri, 06 Feb 2015 21:53:39 +0900
parents c98fa0ca4678
children afed5d2e7985
comparison
equal deleted inserted replaced
24063:c98fa0ca4678 24064:c260887cdbcd
1819 # Default --rev value depends on --follow but --follow behaviour 1819 # Default --rev value depends on --follow but --follow behaviour
1820 # depends on revisions resolved from --rev... 1820 # depends on revisions resolved from --rev...
1821 follow = opts.get('follow') or opts.get('follow_first') 1821 follow = opts.get('follow') or opts.get('follow_first')
1822 if opts.get('rev'): 1822 if opts.get('rev'):
1823 revs = scmutil.revrange(repo, opts['rev']) 1823 revs = scmutil.revrange(repo, opts['rev'])
1824 elif follow and repo.dirstate.p1() == nullid:
1825 revs = revset.baseset()
1824 elif follow: 1826 elif follow:
1825 revs = repo.revs('reverse(:.)') 1827 revs = repo.revs('reverse(:.)')
1826 else: 1828 else:
1827 revs = revset.spanset(repo) 1829 revs = revset.spanset(repo)
1828 revs.reverse() 1830 revs.reverse()