OSX上的VScode- GIT ssh密钥密码-从内置终端中工作,而不是从命令面板中工作

1l5u6lss  于 2022-12-17  发布在  Git
关注(0)|答案(3)|浏览(116)

我可以连接到Git服务器并在VSCode内置终端中执行任何我想做的事情,但是,只要我使用命令pallette并想执行推送,它就会失败,因为现在显示了密码提示符。
有什么办法可以避免在每次按下时输入密码短语?

mnowg1ta

mnowg1ta1#

考虑到远程开发提示和技巧部分,这似乎是意料之中的:

启用备用SSH身份验证方法#

如果要连接到SSH远程主机,并且存在以下情况之一:

  • 使用双因素身份验证进行连接
  • 使用密码身份验证
  • 当SSH代理未运行或不可访问时,使用带有密码的SSH密钥

则VS代码应自动提示您输入所需的信息。I
因此,请确保SSH代理在本地运行
VS代码会自动将您的密钥添加到代理中,这样您就不必在每次打开远程VS代码窗口时都输入密码。
要验证代理是否正在运行并且可以从VS代码的环境访问,请在本地VS代码窗口的终端运行ssh-add -l
您应该会看到代理中的键列表(或者没有键的消息)。
如果代理未运行,请按照以下说明将其启动。启动代理后,请确保重新启动VS代码。

wlp8pajw

wlp8pajw2#

为了使它工作,我不得不广告的关键OSX钥匙链和配置它在.ssh/config

2wnc66cl

2wnc66cl3#

自动将密钥加载到ssh-agent中并将密码存储在keychain中:(参见步骤2)
如果您使用的是macOS Sierra 10.12.2或更高版本,则需要修改~/.ssh/config文件,以自动将密钥加载到ssh代理中并将密码存储在钥匙串中。
首先,检查您的~/.ssh/config文件是否存在于默认位置。

$ open ~/.ssh/config
> The file /Users/YOU/.ssh/config does not exist.

如果该文件不存在,请创建该文件。

$ touch ~/.ssh/config

打开~/.ssh/config文件,然后修改该文件以包含以下行。如果SSH密钥文件的名称或路径与示例代码不同,请修改文件名或路径以匹配当前设置。

Host *.github.com
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_ed25519

相关问题