98 desc = elt.findtext('name') + '\n' + elt.findtext('comment', '') |
98 desc = elt.findtext('name') + '\n' + elt.findtext('comment', '') |
99 return commit(author=elt.get('author'), date=util.datestr(date), |
99 return commit(author=elt.get('author'), date=util.datestr(date), |
100 desc=desc.strip(), parents=self.parents[rev]) |
100 desc=desc.strip(), parents=self.parents[rev]) |
101 |
101 |
102 def pull(self, rev): |
102 def pull(self, rev): |
103 output, status = self.run('pull %r --all --match="hash %s"' % |
103 output, status = self.run('pull', self.path, '--all', |
104 (self.path, rev), |
104 '--match', 'hash %s' % rev, |
105 '--no-test', '--no-posthook', |
105 '--no-test', '--no-posthook', |
106 '--external-merge=/bin/false', |
106 '--external-merge', '/bin/false', |
107 repodir=self.tmppath) |
107 repodir=self.tmppath) |
108 if status: |
108 if status: |
109 if output.find('We have conflicts in') == -1: |
109 if output.find('We have conflicts in') == -1: |
110 self.checkexit(status, output) |
110 self.checkexit(status, output) |
111 output, status = self.run('revert --all', repodir=self.tmppath) |
111 output, status = self.run('revert', '--all', repodir=self.tmppath) |
112 self.checkexit(status, output) |
112 self.checkexit(status, output) |
113 |
113 |
114 def getchanges(self, rev): |
114 def getchanges(self, rev): |
115 self.pull(rev) |
115 self.pull(rev) |
116 copies = {} |
116 copies = {} |