Mercurial > public > mercurial-scm > hg
comparison mercurial/subrepo.py @ 9507:5987183d6e59
subrepo: add auto-pull for merge
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Wed, 30 Sep 2009 18:47:33 -0500 |
parents | f783bb979fb3 |
children | e2fd9b62349b |
comparison
equal
deleted
inserted
replaced
9506:49b62395e910 | 9507:5987183d6e59 |
---|---|
166 # we can't fully delete the repository as it may contain | 166 # we can't fully delete the repository as it may contain |
167 # local-only history | 167 # local-only history |
168 self._repo.ui.note(_('removing subrepo %s\n') % self._path) | 168 self._repo.ui.note(_('removing subrepo %s\n') % self._path) |
169 hg.clean(self._repo, node.nullid, False) | 169 hg.clean(self._repo, node.nullid, False) |
170 | 170 |
171 def get(self, state): | 171 def _get(self, state): |
172 source, revision = state | 172 source, revision = state |
173 try: | 173 try: |
174 self._repo.lookup(revision) | 174 self._repo.lookup(revision) |
175 except error.RepoError: | 175 except error.RepoError: |
176 self._repo._subsource = source | 176 self._repo._subsource = source |
177 self._repo.ui.status(_('pulling subrepo %s\n') % self._path) | 177 self._repo.ui.status(_('pulling subrepo %s\n') % self._path) |
178 srcurl = _abssource(self._repo) | 178 srcurl = _abssource(self._repo) |
179 other = hg.repository(self._repo.ui, srcurl) | 179 other = hg.repository(self._repo.ui, srcurl) |
180 self._repo.pull(other) | 180 self._repo.pull(other) |
181 | 181 |
182 def get(self, state): | |
183 self._get(state) | |
184 source, revision = state | |
182 hg.clean(self._repo, revision, False) | 185 hg.clean(self._repo, revision, False) |
183 | 186 |
184 def merge(self, state): | 187 def merge(self, state): |
188 self._get(state) | |
185 hg.merge(self._repo, state[1], remind=False) | 189 hg.merge(self._repo, state[1], remind=False) |
186 | 190 |
187 def push(self, force): | 191 def push(self, force): |
188 # push subrepos depth-first for coherent ordering | 192 # push subrepos depth-first for coherent ordering |
189 c = self._repo[''] | 193 c = self._repo[''] |