123 # header, it means the tree history ends here. |
123 # header, it means the tree history ends here. |
124 if rev[-6:] == 'base-0': |
124 if rev[-6:] == 'base-0': |
125 break |
125 break |
126 |
126 |
127 def after(self): |
127 def after(self): |
128 self.ui.debug(_('cleaning up %s\n') % self.tmppath) |
128 self.ui.debug('cleaning up %s\n' % self.tmppath) |
129 shutil.rmtree(self.tmppath, ignore_errors=True) |
129 shutil.rmtree(self.tmppath, ignore_errors=True) |
130 |
130 |
131 def getheads(self): |
131 def getheads(self): |
132 return self.parents[None] |
132 return self.parents[None] |
133 |
133 |
193 cmdline = util.quotecommand(' '.join(cmdline)) |
193 cmdline = util.quotecommand(' '.join(cmdline)) |
194 self.ui.debug(cmdline, '\n') |
194 self.ui.debug(cmdline, '\n') |
195 return os.system(cmdline) |
195 return os.system(cmdline) |
196 |
196 |
197 def _update(self, rev): |
197 def _update(self, rev): |
198 self.ui.debug(_('applying revision %s...\n') % rev) |
198 self.ui.debug('applying revision %s...\n' % rev) |
199 changeset, status = self.runlines('replay', '-d', self.tmppath, |
199 changeset, status = self.runlines('replay', '-d', self.tmppath, |
200 rev) |
200 rev) |
201 if status: |
201 if status: |
202 # Something went wrong while merging (baz or tla |
202 # Something went wrong while merging (baz or tla |
203 # issue?), get latest revision and try from there |
203 # issue?), get latest revision and try from there |
204 shutil.rmtree(self.tmppath, ignore_errors=True) |
204 shutil.rmtree(self.tmppath, ignore_errors=True) |
205 self._obtainrevision(rev) |
205 self._obtainrevision(rev) |
206 else: |
206 else: |
207 old_rev = self.parents[rev][0] |
207 old_rev = self.parents[rev][0] |
208 self.ui.debug(_('computing changeset between %s and %s...\n') |
208 self.ui.debug('computing changeset between %s and %s...\n' |
209 % (old_rev, rev)) |
209 % (old_rev, rev)) |
210 self._parsechangeset(changeset, rev) |
210 self._parsechangeset(changeset, rev) |
211 |
211 |
212 def _getfile(self, name, rev): |
212 def _getfile(self, name, rev): |
213 mode = os.lstat(os.path.join(self.tmppath, name)).st_mode |
213 mode = os.lstat(os.path.join(self.tmppath, name)).st_mode |
252 changes.append(d) |
252 changes.append(d) |
253 copies[d] = s |
253 copies[d] = s |
254 return changes, copies |
254 return changes, copies |
255 |
255 |
256 def _obtainrevision(self, rev): |
256 def _obtainrevision(self, rev): |
257 self.ui.debug(_('obtaining revision %s...\n') % rev) |
257 self.ui.debug('obtaining revision %s...\n' % rev) |
258 output = self._execute('get', rev, self.tmppath) |
258 output = self._execute('get', rev, self.tmppath) |
259 self.checkexit(output) |
259 self.checkexit(output) |
260 self.ui.debug(_('analyzing revision %s...\n') % rev) |
260 self.ui.debug('analyzing revision %s...\n' % rev) |
261 files = self._readcontents(self.tmppath) |
261 files = self._readcontents(self.tmppath) |
262 self.changes[rev].add_files += files |
262 self.changes[rev].add_files += files |
263 |
263 |
264 def _stripbasepath(self, path): |
264 def _stripbasepath(self, path): |
265 if path.startswith('./'): |
265 if path.startswith('./'): |