为什么 vscode 会拦截终端上的 git push 命令?

psy*_*ylo 5 github visual-studio-code

今天我打算git pushvscode 终端执行并弹出一个对话框:

扩展“GitHub”想要使用 GitHub 登录。

在此输入图像描述

我检查了一下,结果发现我没有在 vscode 上安装任何名为 GitHub 的扩展。

问题是为什么会向我展示这个?如果我想使用扩展程序进行推送,我不会在终端上输入git push。vscode 是否会拦截我在终端中输入的内容?

除此之外,它还会打开一个用户/密码对话框,如下所示: 在此输入图像描述

这是侵入性的。有什么办法可以禁用这个吗?

PS:我已经从设置中取消选中 GitHub 身份验证: 在此输入图像描述

我使用 vscode 一年了,这是让我恼火的第一件事。我非常喜欢vscode,不希望它成为一个IDE。像这样的功能应该通过扩展来增加。

PS2:我使用的是 vscode 1.50.0

Reg*_*dit 3

此行为内置于 VS Code 中,因此即使您没有安装 GitHub 扩展,您也会看到此提示:

当您在 VS Code 中运行任何需要 GitHub 身份验证的 Git 操作(例如推送到您所属的存储库或克隆私有存储库)时,就会通过 GitHub 启用身份验证。您不需要安装任何特殊的扩展来进行身份验证;它内置于 VS Code 中,以便您可以有效地管理您的存储库。当您执行需要 GitHub 身份验证的操作时,您会看到登录提示

您可以使用单独的 Windows 命令提示符来避免 VS Code 拦截您的命令。

编辑如果您更喜欢使用 VS Code 终端来执行 git 命令而不进行拦截,那么正如 HolyBlackCat 有用地指出的那样,现在有一个设置可以禁用此行为。

"github.gitAuthentication": false,
Run Code Online (Sandbox Code Playgroud)

然后,任何 git 身份验证提示都会在 VS Code 外部出现。

  • `"github.gitAuthentication": false,` 对我不起作用(在 VSCode CLI 中使用更复杂的工具链时)。它仍然要求输入登录名/密码。版本:1.53.0 @ macOS Big Sur (2认同)