Mercurial > hg-stable
changeset 9781:eccc8aacd6f9
subrepo: do a linear update when appropriate
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sat, 07 Nov 2009 16:31:43 -0600 |
parents | 1ee085511b89 |
children | c1c40511c276 8eacee85d019 |
files | mercurial/subrepo.py |
diffstat | 1 files changed, 6 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/subrepo.py Sat Nov 07 16:30:42 2009 -0600 +++ b/mercurial/subrepo.py Sat Nov 07 16:31:43 2009 -0600 @@ -200,7 +200,12 @@ def merge(self, state): self._get(state) - hg.merge(self._repo, state[1], remind=False) + cur = self._repo['.'] + dst = self._repo[state[1]] + if dst.ancestor(cur) == cur: + hg.update(self._repo, state[1]) + else: + hg.merge(self._repo, state[1], remind=False) def push(self, force): # push subrepos depth-first for coherent ordering