equal
deleted
inserted
replaced
13 demandload(globals(), "changelog dirstate filelog manifest context") |
13 demandload(globals(), "changelog dirstate filelog manifest context") |
14 demandload(globals(), "re lock transaction tempfile stat mdiff errno ui") |
14 demandload(globals(), "re lock transaction tempfile stat mdiff errno ui") |
15 demandload(globals(), "os revlog time util") |
15 demandload(globals(), "os revlog time util") |
16 |
16 |
17 class localrepository(repo.repository): |
17 class localrepository(repo.repository): |
18 capabilities = () |
18 capabilities = ('lookup', 'changegroupsubset') |
19 |
19 |
20 def __del__(self): |
20 def __del__(self): |
21 self.transhandle = None |
21 self.transhandle = None |
22 def __init__(self, parentui, path=None, create=0): |
22 def __init__(self, parentui, path=None, create=0): |
23 repo.repository.__init__(self) |
23 repo.repository.__init__(self) |
1239 return 0 |
1239 return 0 |
1240 |
1240 |
1241 if heads is None: |
1241 if heads is None: |
1242 cg = remote.changegroup(fetch, 'pull') |
1242 cg = remote.changegroup(fetch, 'pull') |
1243 else: |
1243 else: |
|
1244 if 'changegroupsubset' not in remote.capabilities: |
|
1245 raise util.Abort(_("Partial pull cannot be done because other repository doesn't support changegroupsubset.")) |
1244 cg = remote.changegroupsubset(fetch, heads, 'pull') |
1246 cg = remote.changegroupsubset(fetch, heads, 'pull') |
1245 return self.addchangegroup(cg, 'pull', remote.url()) |
1247 return self.addchangegroup(cg, 'pull', remote.url()) |
1246 finally: |
1248 finally: |
1247 if mylock: |
1249 if mylock: |
1248 lock.release() |
1250 lock.release() |