equal
deleted
inserted
replaced
269 'use (l)ocal source (%s) or (r)emote source (%s)?' |
269 'use (l)ocal source (%s) or (r)emote source (%s)?' |
270 '$$ &Local $$ &Remote') |
270 '$$ &Local $$ &Remote') |
271 % (subrelpath(sub), local, remote)) |
271 % (subrelpath(sub), local, remote)) |
272 return ui.promptchoice(msg, 0) |
272 return ui.promptchoice(msg, 0) |
273 |
273 |
274 def reporelpath(repo): |
|
275 """return path to this (sub)repo as seen from outermost repo""" |
|
276 parent = repo |
|
277 while util.safehasattr(parent, '_subparent'): |
|
278 parent = parent._subparent |
|
279 return repo.root[len(pathutil.normasprefix(parent.root)):] |
|
280 |
|
281 def subrelpath(sub): |
274 def subrelpath(sub): |
282 """return path to this subrepo as seen from outermost repo""" |
275 """return path to this subrepo as seen from outermost repo""" |
283 return sub._relpath |
276 return sub._relpath |
284 |
277 |
285 def _abssource(repo, push=False, abort=True): |
278 def _abssource(repo, push=False, abort=True): |
556 |
549 |
557 @propertycache |
550 @propertycache |
558 def _relpath(self): |
551 def _relpath(self): |
559 """return path to this subrepository as seen from outermost repository |
552 """return path to this subrepository as seen from outermost repository |
560 """ |
553 """ |
561 return self.wvfs.reljoin(reporelpath(self._ctx.repo()), self._path) |
554 repo = self._ctx.repo() |
|
555 parent = repo |
|
556 while util.safehasattr(parent, '_subparent'): |
|
557 parent = parent._subparent |
|
558 reporelpath = repo.root[len(pathutil.normasprefix(parent.root)):] |
|
559 |
|
560 return self.wvfs.reljoin(reporelpath, self._path) |
562 |
561 |
563 class hgsubrepo(abstractsubrepo): |
562 class hgsubrepo(abstractsubrepo): |
564 def __init__(self, ctx, path, state): |
563 def __init__(self, ctx, path, state): |
565 super(hgsubrepo, self).__init__(ctx, path) |
564 super(hgsubrepo, self).__init__(ctx, path) |
566 self._state = state |
565 self._state = state |