Git - add support for SSH Uri (#152051)

* Add support for SSH Uri

* Update extensions/git/src/protocolHandler.ts

Co-authored-by: João Moreno <joao.moreno@microsoft.com>

Co-authored-by: João Moreno <joao.moreno@microsoft.com>
This commit is contained in:
Ladislau Szomoru
2022-06-14 20:41:54 +02:00
committed by GitHub
parent ef8f1ff4c4
commit c5318659ec

View File

@@ -38,7 +38,15 @@ export class GitProtocolHandler implements UriHandler {
let cloneUri: Uri;
try {
cloneUri = Uri.parse(Array.isArray(data.url) ? data.url[0] : data.url, true);
let rawUri = Array.isArray(data.url) ? data.url[0] : data.url;
// Handle SSH Uri
// Ex: git@github.com:microsoft/vscode.git
rawUri = rawUri.replace(/^(git@[^\/:]+)(:)/i, 'ssh://$1/');
cloneUri = Uri.parse(rawUri, true);
// Validate against supported schemes
if (!schemes.has(cloneUri.scheme.toLowerCase())) {
throw new Error('Unsupported scheme.');
}