Mercurial > hg > mercurial-crew-with-dirclash
comparison mercurial/localrepo.py @ 1461:02099220ad49
Implementing clone -r, which clones all changesets needed to reach a
particular revision.
author | Eric Hopper <hopper@omnifarious.org> |
---|---|
date | Fri, 07 Oct 2005 19:51:09 -0700 |
parents | 40d08cf1c544 |
children | 12a8d772fa32 |
comparison
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 |