diff --git a/extensions/git/src/askpass.ts b/extensions/git/src/askpass.ts index ad1b5f3a791..7fc29a371ad 100644 --- a/extensions/git/src/askpass.ts +++ b/extensions/git/src/askpass.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { window, InputBoxOptions, Uri, OutputChannel, Disposable } from 'vscode'; +import { window, InputBoxOptions, Uri, OutputChannel, Disposable, workspace } from 'vscode'; import { IDisposable, EmptyDisposable, toDisposable } from './util'; import * as path from 'path'; import { IIPCHandler, IIPCServer, createIPCServer } from './ipc/ipcServer'; @@ -31,6 +31,13 @@ export class Askpass implements IIPCHandler { } async handle({ request, host }: { request: string, host: string }): Promise { + const config = workspace.getConfiguration('git', null); + const enabled = config.get('enabled'); + + if (!enabled) { + return ''; + } + const uri = Uri.parse(host); const authority = uri.authority.replace(/^.*@/, ''); const password = /password/i.test(request); diff --git a/extensions/git/src/github.ts b/extensions/git/src/github.ts index bc2f816e52b..7020d6788d5 100644 --- a/extensions/git/src/github.ts +++ b/extensions/git/src/github.ts @@ -56,7 +56,8 @@ export class GithubCredentialProviderManager { } private refresh(): void { - this.enabled = workspace.getConfiguration('git', null).get('githubAuthentication', true); + const config = workspace.getConfiguration('git', null); + this.enabled = config.get('enabled', true) && config.get('githubAuthentication', true); } dispose(): void { diff --git a/extensions/git/src/terminal.ts b/extensions/git/src/terminal.ts index c5b9eb81fbb..2eda93151d2 100644 --- a/extensions/git/src/terminal.ts +++ b/extensions/git/src/terminal.ts @@ -34,7 +34,8 @@ export class TerminalEnvironmentManager { } private refresh(): void { - this.enabled = workspace.getConfiguration('git', null).get('terminalAuthentication', true); + const config = workspace.getConfiguration('git', null); + this.enabled = config.get('enabled', true) && config.get('terminalAuthentication', true); } dispose(): void {