在Windows 10上使用带有VSCode的选美

a64a0gku  于 2022-11-26  发布在  Windows
关注(0)|答案(2)|浏览(159)

我尝试在我的机器(Win10)上配置VSCode,以便使用已加载到运行在机器上的Pageant中的密钥通过SSH连接到远程服务器。
我发现的一种方法是使用“wsl-ssh-pageant”,但是我不知道如何在我的机器上安装,即使我在我的机器上启用了WSL(Ubuntu)。
有人可以帮助配置VSCode与pageant吗?解释如何安装“wsl-ssh-pageant”。
谢谢

gr8qqesn

gr8qqesn1#

如果Pageant已经加载了密钥,那么您可以通过Plink(PuTTY Link)命令行界面让另一个应用程序使用它。
如果你想使用远程服务器上的Git仓库,比如使用凭证(密钥),我找到了一个可行的解决方案:https://www.cgranade.com/blog/2016/06/06/ssh-keys-in-vscode.html(已将密钥加载到Pageant,唯一缺少的部分是最后一步4)。
您需要在Win10中设置一个新的环境变量。对我来说,当我添加一个“系统变量”而不是“用户变量”时,它就起作用了。
变量的名称为:“GIT_SSH”
该值是PuTTY\plink.exe的完整路径,例如:“C:\程式档(x86)\PuTTY\程式链接.exe”
如果您已经开启VS程式码,请关闭它,然后再重新开启,以确定它可以看到新的环境变量。

更新(2021.11.10):

现在,在我的案例中,VSCode还需要解决方案中描述的内容:VS Code / Bitbucket / SSH - Permission denied (publickey)

pgx2nnw8

pgx2nnw82#

以下内容仅在Windows 10之前有效!

  • 在Win 11下,只需忽略设置环境变量GIT_HUB*

从Putty 0.77版本开始,你不再需要使用“wsl-ssh-pageant”或PLINK,这使得在vscode中使用pagent作为git的ssh-agent变得更加简单。

前提条件:

  1. Putty / Pagent〉= Version 0.77,并以新命令pagent.exe --openssh-config %USERPROFILE%\pagent.conf [<your private-key>]开始。它创建一个文件,将ssh定向到pagent。
    1.正确的OpenSSH公钥已加载到git中。(* Putty格式.ppk的公钥无法工作!*)
    1.pagent中加载了相应的OpenSSH私钥。
    1.创建文件“%USERPROFILE%.ssh\config”并添加以下行include "C:\Users\<your-username>\.ssh\pagent.conf"。它将加载pagent生成的文件以定向到pagent。
    1.不在Win 11中!:对于vscode,环境变量GIT_SSH必须指向Windows ssh可执行文件,该文件通常位于C:\Windows\System32\OpenSSH\ssh.exe中。要永久设置此变量(即使是在管理员限制的系统上):在Powershell中执行
[Environment]::SetEnvironmentVariable("GIT_SSH", "$((Get-Command ssh).Source)", [System.EnvironmentVariableTarget]::User)

它将添加一个永久的用户特定环境变量,可供vscode使用(请参见注册表中Computer\HKEY_CURRENT_USER\Environment\GIT_SSH下的)
现在从命令行测试git访问,看看ssh访问git-repo是否正常。
打开CTRL-Rcmd。如果以下命令的工作方式类似,则一切正常:

C:\Users\<myuser>> ssh -T git@<your-git-url-goes-here>
Welcome to GitLab, @<your username in git>!

如果它是这样工作的,你可以在vscode中尝试git,但是不要忘记重新启动vscode。

相关问题