Visual Studio代码远程编辑git身份验证问题



我已经用这个拔头发有一段时间了。

在Windows 10上运行Visual Studio代码(1.65.2(。

所以我有一个到linux机器的远程SSH连接,我在上面有一个目录,它是一个git存储库,并同步到Github。

每当我尝试使用Visual Studio代码的同步按钮时,我都会收到以下错误。

[2022-03-19T17:29:29.276Z] > git pull --tags origin new-time-management [787ms]
[2022-03-19T17:29:29.276Z] git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

从VSC的输出中,我可以看到它似乎在远程主机上使用git,因为这是远程主机运行的git版本,但我的本地机器使用了一个更新的版本:

[2022-03-19T17:46:55.585Z] Validating found git in: git
[2022-03-19T17:46:55.624Z] Using git 2.25.1 from git

这有点令人困惑,因为到目前为止我读到的所有指南似乎都暗示我应该更改我的~/.ssh/config&指的是我本地机器上的钥匙。无论如何,我在那里正确地配置了一切,以防万一,但似乎没有帮助。

我的~/.ssh/config:

Host github.com
User git
Hostname github.com
IdentityFile ~/.ssh/github_private_key.ppk
AddKeysToAgent yes

当我使用VSC的终端时,所有的git身份验证都可以正常工作,因为它可能基本上只是到远程主机的ssh连接。

此外,所有本地(远程ssh内部(git功能都可以正常工作。

我试着使用我找到的所有指南,但到目前为止都不起作用。例如:这个和这个。

我可能错过了一些关于这应该如何运作的基本理解。当使用远程SSH时,它应该在远程主机还是本地主机上运行git?

当使用远程SSH时,它应该在远程主机还是本地主机上运行git?

在远程主机上,推/拉应该发生在那里。

这意味着你应该打开一个到该服务器的交互式ssh会话(在VSCode之外(,并检查一个ssh -Tv github.com是否有效(意思是:"以‘嗨,用户名!你已经成功验证,但GitHub不提供shell访问权限’结束。"(

其想法是首先从命令行(在远程主机上(进行检查/调试:一旦正常工作,VSCode远程SSH会话很可能会从相同的工作命令中受益。

最新更新