2

我从 Visual Studio 中的“Git Changes”选项卡启动同步、获取、拉取或推送,但操作只是挂起,没有停止它的选项。我必须点击“X”才能关闭 Visual Studio。

如果操作是同步操作,它会在其他所有内容上打开一个模式对话框,因此挂起更糟,我必须从任务管理器中强制退出 Visual Studio。

这适用于所有带有 git 集成的 Visual Studio 版本(我最近在 VS 2019 和 VS 2022 预览版中看到它,但之前在 VS 2017 中看到过它)。它通常发生在在新机器上设置 VS 之后。

4

1 回答 1

2

这也可能有其他原因,但对我来说这是因为我正在使用 PuTTY 的 Pageant 程序进行集成 git 身份验证(即我用我的私钥启动 pageant.exe,并且我已经添加GIT_SSH=C:\Program Files\PuTTY\plink.exe到我的环境变量中,以便 Visual Studio、Git for Windows 等都可以使用它进行身份验证)。

当您之前没有使用 PuTTY 的任何程序访问 repo 的 git 服务器时,就会出现问题。即使 Pageant 是使用有效密钥启动的,第一次访问服务器时,您仍然需要将服务器的密钥添加到 PuTTY 的存储中。

要修复它,只需从命令行访问服务器一次,例如putty git@bitbucket.orgputty git@github.com(这取决于远程是什么,如 所示git remote -v),然后弹出 PuTTY 安全警报窗口,您需要单击接受服务器证书。

这样做一次之后,从那时起,它将与 PuTTY 的 pageant/plink 集成(包括在 Visual Studio 中)一起正常工作。

于 2021-12-10T12:33:21.370 回答