Show More
@@ -172,31 +172,34 b' class PullRequestModel(BaseModel):' | |||
|
172 | 172 | """ |
|
173 | 173 | |
|
174 | 174 | changesets = [] |
|
175 | #case two independent repos | |
|
176 | if org_repo != other_repo: | |
|
177 | revs = [ | |
|
178 | org_repo._repo.lookup(org_ref[1]), | |
|
179 | org_repo._repo.lookup(other_ref[1]), | |
|
180 | ] | |
|
181 | 175 | |
|
182 | obj = findcommonoutgoing(org_repo._repo, | |
|
183 | localrepo.locallegacypeer(other_repo._repo.local()), | |
|
184 | revs, | |
|
185 | force=True) | |
|
186 | revs = obj.missing | |
|
176 | if alias == 'hg': | |
|
187 | 177 | |
|
188 | for cs in map(binascii.hexlify, revs): | |
|
189 | _cs = org_repo.get_changeset(cs) | |
|
190 | changesets.append(_cs) | |
|
191 | # in case we have revisions filter out the ones not in given range | |
|
192 | if org_ref[0] == 'rev' and other_ref[0] == 'rev': | |
|
193 | revs = [x.raw_id for x in changesets] | |
|
194 | start = org_ref[1] | |
|
195 | stop = other_ref[1] | |
|
196 | changesets = changesets[revs.index(start):revs.index(stop) + 1] | |
|
197 | else: | |
|
178 | #case two independent repos | |
|
179 | if org_repo != other_repo: | |
|
180 | revs = [ | |
|
181 | org_repo._repo.lookup(org_ref[1]), | |
|
182 | org_repo._repo.lookup(other_ref[1]), | |
|
183 | ] | |
|
184 | ||
|
185 | obj = findcommonoutgoing(org_repo._repo, | |
|
186 | localrepo.locallegacypeer(other_repo._repo.local()), | |
|
187 | revs, | |
|
188 | force=True) | |
|
189 | revs = obj.missing | |
|
190 | ||
|
191 | for cs in map(binascii.hexlify, revs): | |
|
192 | _cs = org_repo.get_changeset(cs) | |
|
193 | changesets.append(_cs) | |
|
194 | # in case we have revisions filter out the ones not in given range | |
|
195 | if org_ref[0] == 'rev' and other_ref[0] == 'rev': | |
|
196 | revs = [x.raw_id for x in changesets] | |
|
197 | start = org_ref[1] | |
|
198 | stop = other_ref[1] | |
|
199 | changesets = changesets[revs.index(start):revs.index(stop) + 1] | |
|
200 | ||
|
198 | 201 | #no remote compare do it on the same repository |
|
199 |
|
|
|
202 | else: | |
|
200 | 203 | _revset_predicates = { |
|
201 | 204 | 'branch': 'branch', |
|
202 | 205 | 'book': 'bookmark', |
@@ -214,14 +217,16 b' class PullRequestModel(BaseModel):' | |||
|
214 | 217 | out = scmutil.revrange(org_repo._repo, revs) |
|
215 | 218 | for cs in (out): |
|
216 | 219 | changesets.append(org_repo.get_changeset(cs)) |
|
217 | elif alias == 'git': | |
|
218 | so, se = org_repo.run_git_command( | |
|
219 | 'log --reverse --pretty="format: %%H" -s -p %s..%s' % (org_ref[1], | |
|
220 | other_ref[1]) | |
|
221 | ) | |
|
222 | ids = re.findall(r'[0-9a-fA-F]{40}', so) | |
|
223 | for cs in (ids): | |
|
224 | changesets.append(org_repo.get_changeset(cs)) | |
|
220 | ||
|
221 | elif alias == 'git': | |
|
222 | assert org_repo == other_repo, (org_repo, other_repo) # no git support for different repos | |
|
223 | so, se = org_repo.run_git_command( | |
|
224 | 'log --reverse --pretty="format: %%H" -s -p %s..%s' % (org_ref[1], | |
|
225 | other_ref[1]) | |
|
226 | ) | |
|
227 | ids = re.findall(r'[0-9a-fA-F]{40}', so) | |
|
228 | for cs in (ids): | |
|
229 | changesets.append(org_repo.get_changeset(cs)) | |
|
225 | 230 | |
|
226 | 231 | return changesets |
|
227 | 232 |
General Comments 0
You need to be logged in to leave comments.
Login now