Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/localrepo.py @ 6901:43a817f3a649
streamclone: fold in localrepo.storefiles
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Wed, 13 Aug 2008 20:18:44 -0500 |
parents | def492d1b592 |
children | 1a14608bdeff |
comparison
equal
deleted
inserted
replaced
6900:def492d1b592 | 6901:43a817f3a649 |
---|---|
2052 | 2052 |
2053 if stream and not heads and remote.capable('stream'): | 2053 if stream and not heads and remote.capable('stream'): |
2054 return self.stream_in(remote) | 2054 return self.stream_in(remote) |
2055 return self.pull(remote, heads) | 2055 return self.pull(remote, heads) |
2056 | 2056 |
2057 def storefiles(self): | |
2058 '''get all *.i and *.d files in the store | |
2059 | |
2060 Returns (list of (filename, size), total_bytes)''' | |
2061 | |
2062 lock = None | |
2063 try: | |
2064 self.ui.debug('scanning\n') | |
2065 entries = [] | |
2066 total_bytes = 0 | |
2067 # get consistent snapshot of repo, lock during scan | |
2068 lock = self.lock() | |
2069 for name, ename, size in self.store.walk(): | |
2070 entries.append((name, size)) | |
2071 total_bytes += size | |
2072 return entries, total_bytes | |
2073 finally: | |
2074 del lock | |
2075 | |
2076 # used to avoid circular references so destructors work | 2057 # used to avoid circular references so destructors work |
2077 def aftertrans(files): | 2058 def aftertrans(files): |
2078 renamefiles = [tuple(t) for t in files] | 2059 renamefiles = [tuple(t) for t in files] |
2079 def a(): | 2060 def a(): |
2080 for src, dest in renamefiles: | 2061 for src, dest in renamefiles: |