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