8 |
8 |
9 from i18n import _ |
9 from i18n import _ |
10 from lock import release |
10 from lock import release |
11 from node import hex, nullid |
11 from node import hex, nullid |
12 import localrepo, bundlerepo, httppeer, sshpeer, statichttprepo, bookmarks |
12 import localrepo, bundlerepo, httppeer, sshpeer, statichttprepo, bookmarks |
13 import lock, util, extensions, error, node, scmutil, phases |
13 import lock, util, extensions, error, node, scmutil, phases, url |
14 import cmdutil, discovery |
14 import cmdutil, discovery |
15 import merge as mergemod |
15 import merge as mergemod |
16 import verify as verifymod |
16 import verify as verifymod |
17 import errno, os, shutil |
17 import errno, os, shutil |
18 |
18 |
86 try: |
86 try: |
87 return _peerlookup(repo).islocal(repo) |
87 return _peerlookup(repo).islocal(repo) |
88 except AttributeError: |
88 except AttributeError: |
89 return False |
89 return False |
90 return repo.local() |
90 return repo.local() |
|
91 |
|
92 def openpath(ui, path): |
|
93 '''open path with open if local, url.open if remote''' |
|
94 if islocal(path): |
|
95 return open(util.urllocalpath(path)) |
|
96 else: |
|
97 return url.open(ui, path) |
91 |
98 |
92 def _peerorrepo(ui, path, create=False): |
99 def _peerorrepo(ui, path, create=False): |
93 """return a repository object for the specified path""" |
100 """return a repository object for the specified path""" |
94 obj = _peerlookup(path).instance(ui, path, create) |
101 obj = _peerlookup(path).instance(ui, path, create) |
95 ui = getattr(obj, "ui", ui) |
102 ui = getattr(obj, "ui", ui) |