Allow ref checkout after protocol handler clone (#159481)

This commit is contained in:
Joyce Er
2022-08-31 09:06:44 +00:00
committed by GitHub
parent 0ddb3aef52
commit 8d28ffac6d
2 changed files with 15 additions and 4 deletions

View File

@@ -25,6 +25,7 @@ export class GitProtocolHandler implements UriHandler {
private clone(uri: Uri): void {
const data = querystring.parse(uri.query);
const ref = data.ref;
if (!data.url) {
console.warn('Failed to open URI:', uri);
@@ -36,6 +37,11 @@ export class GitProtocolHandler implements UriHandler {
return;
}
if (ref !== undefined && typeof ref !== 'string') {
console.warn('Failed to open URI:', uri);
return;
}
let cloneUri: Uri;
try {
let rawUri = Array.isArray(data.url) ? data.url[0] : data.url;
@@ -56,7 +62,7 @@ export class GitProtocolHandler implements UriHandler {
return;
}
commands.executeCommand('git.clone', cloneUri.toString(true));
commands.executeCommand('git.clone', cloneUri.toString(true), undefined, { ref: ref });
}
dispose(): void {