diff --git a/src/git/repository.ts b/src/git/repository.ts index 22b587f..b011ef9 100644 --- a/src/git/repository.ts +++ b/src/git/repository.ts @@ -136,6 +136,7 @@ export interface GitHubRepoContext { export interface GitHubContext { repos: GitHubRepoContext[]; reposByUri: Map; + reposByOwnerAndName: Map; username: string; } @@ -199,6 +200,7 @@ export async function getGitHubContext(): Promise { gitHubContext = Promise.resolve({ repos, reposByUri: new Map(repos.map(r => [r.workspaceUri.toString(), r])), + reposByOwnerAndName: new Map(repos.map(r => [`${r.owner}/${r.name}`.toLocaleLowerCase(), r])), username }); } catch (e) { @@ -224,7 +226,8 @@ export async function getGitHubContextForRepo(owner: string, name: string): Prom return undefined; } - return gitHubContext.repos.find(r => r.owner === owner && r.name === name); + const searchKey = `${owner}/${name}`.toLocaleLowerCase(); + return gitHubContext.reposByOwnerAndName.get(searchKey); } export async function getGitHubContextForWorkspaceUri(