Mercurial > public > mercurial-scm > hg-stable
diff mercurial/scmutil.py @ 26433:3ad41638b4b4
changeset_printer: move _meaningful_parentrevs() to scmutil
It will be used by templatekw.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sat, 26 Sep 2015 12:29:09 +0900 |
parents | 4b0fc75f9403 |
children | f0d730efb02f |
line wrap: on
line diff
--- a/mercurial/scmutil.py Thu Oct 01 22:14:11 2015 -0400 +++ b/mercurial/scmutil.py Sat Sep 26 12:29:09 2015 +0900 @@ -734,6 +734,22 @@ m = revset.matchany(repo.ui, allspecs, repo) return m(repo) +def meaningfulparents(repo, ctx): + """Return list of meaningful (or all if debug) parentrevs for rev. + + For merges (two non-nullrev revisions) both parents are meaningful. + Otherwise the first parent revision is considered meaningful if it + is not the preceding revision. + """ + parents = ctx.parents() + if len(parents) > 1: + return parents + if repo.ui.debugflag: + return [parents[0], repo['null']] + if parents[0].rev() >= intrev(ctx.rev()) - 1: + return [] + return parents + def expandpats(pats): '''Expand bare globs when running on windows. On posix we assume it already has already been done by sh.'''