[英]VScode on OSX - GIT ssh key passphrase - working from build in terminal put not from command palette
我可以连接到 Git 服务器并从终端中的 VSCode 构建做任何我想做的事情,但是,一旦我使用命令面板并想要执行推送,它就会失败,因为现在显示密码提示。
有什么办法可以避免在每次推送时输入密码?
考虑到远程开发提示和技巧部分,这似乎是意料之中的:
启用备用 SSH 身份验证方法#
如果您连接到 SSH 远程主机并且是:
- 连接两因素身份验证
- 使用密码验证
- 当 SSH 代理未运行或无法访问时,使用带有密码的 SSH 密钥
然后 VS Code 应该会自动提示您输入所需的信息。 我
所以请确保SSH 代理在本地运行
VS Code 会自动将您的密钥添加到代理,因此您不必每次打开远程 VS Code window 时都输入密码。
要验证代理是否正在运行并且可以从 VS Code 的环境访问,请在本地 VS Code window 的终端中运行
ssh-add -l
。
您应该会看到代理中的密钥列表(或它没有密钥的消息)。
如果代理未运行,请按照以下说明启动它。 启动代理后,一定要重启 VS Code。
为了使它工作,我必须将密钥添加到 OSX 钥匙串并在.ssh/config 中配置它
自动将密钥加载到 ssh-agent 并将密码短语存储在钥匙串中:(请参阅第 2 步)
如果您使用的是 macOS Sierra 10.12.2 或更高版本,您将需要修改您的 ~/.ssh/config 文件以自动将密钥加载到 ssh-agent 并将密码短语存储在您的钥匙串中。
首先,检查您的 ~/.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
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.