mercurial/localrepo.py
changeset 1461 02099220ad49
parent 1460 40d08cf1c544
child 1462 12a8d772fa32
equal deleted inserted replaced
1460:40d08cf1c544 1461:02099220ad49
   848                 subset.append(n)
   848                 subset.append(n)
   849 
   849 
   850         # this is the set of all roots we have to push
   850         # this is the set of all roots we have to push
   851         return subset
   851         return subset
   852 
   852 
   853     def pull(self, remote):
   853     def pull(self, remote, heads = None):
   854         lock = self.lock()
   854         lock = self.lock()
   855 
   855 
   856         # if we have an empty repo, fetch everything
   856         # if we have an empty repo, fetch everything
   857         if self.changelog.tip() == nullid:
   857         if self.changelog.tip() == nullid:
   858             self.ui.status("requesting all changes\n")
   858             self.ui.status("requesting all changes\n")
   862 
   862 
   863         if not fetch:
   863         if not fetch:
   864             self.ui.status("no changes found\n")
   864             self.ui.status("no changes found\n")
   865             return 1
   865             return 1
   866 
   866 
   867         cg = remote.changegroup(fetch)
   867         if heads is None:
       
   868             cg = remote.changegroup(fetch)
       
   869         else:
       
   870             cg = remote.changegroupsubset(fetch, heads)
   868         return self.addchangegroup(cg)
   871         return self.addchangegroup(cg)
   869 
   872 
   870     def push(self, remote, force=False):
   873     def push(self, remote, force=False):
   871         lock = remote.lock()
   874         lock = remote.lock()
   872 
   875