Skip to content

Commit cccd307

Browse files
committed
use pr/<number>/<headOwner>/<headRefName>
1 parent 3e91276 commit cccd307

1 file changed

Lines changed: 11 additions & 8 deletions

File tree

src/treeProvider.ts

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1340,20 +1340,23 @@ export class GitTreeCompareProvider implements TreeDataProvider<Element>, Dispos
13401340
const headRepoUrl = headRepo.clone_url;
13411341
const isFork = headRepo.full_name !== pr.base.repo.full_name;
13421342

1343-
// Create a local branch name for the PR
1344-
const localBranchName = `pr/${prNumber}`;
1343+
// Extract head owner for branch naming
1344+
const headOwner = pr.head.user?.login || pr.head.repo?.owner.login;
1345+
if (!headOwner) {
1346+
window.showErrorMessage('Could not determine PR head owner.');
1347+
return;
1348+
}
1349+
1350+
// Create a local branch name for the PR with owner and ref name
1351+
const localBranchName = `pr/${prNumber}/${headOwner}/${headRef}`;
13451352

13461353
// Fetch and create/update local branch for the PR
13471354
try {
13481355
if (isFork) {
13491356
// For forks, add a remote with pr-fork- prefix
1350-
const forkOwner = pr.head.user?.login || pr.head.repo?.owner.login;
1351-
if (!forkOwner) {
1352-
throw new Error('Could not determine fork owner');
1353-
}
1354-
const forkRemoteName = `pr-fork-${forkOwner}`;
1357+
const forkRemoteName = `pr-fork-${headOwner}`;
13551358

1356-
this.log(`Fetching PR #${prNumber} from fork owned by ${forkOwner}: ${headRepoUrl}`);
1359+
this.log(`Fetching PR #${prNumber} from fork owned by ${headOwner}: ${headRepoUrl}`);
13571360

13581361
// Check if remote already exists, if not add it
13591362
try {

0 commit comments

Comments
 (0)