【发布时间】:2022-10-07 03:36:17
【问题描述】:
我创建了 ssh 密钥,将其添加到 gitlab 上,然后按照说明进行操作。当我从 git bash 推送时,一切正常,每次输入密码都让我很烦。但是当我尝试从 vsCode 推送时,它不会要求我输入密码并引发错误
Git:git@gitlab.com:权限被拒绝(公钥,键盘交互)。
有没有什么办法解决这一问题? 还有额外的帮助:我怎样才能阻止它每次都向我询问密码。
我知道,我的奖金帮助周围有类似的问题,但我找不到有关 vsCode 问题的任何信息。我正在使用 Windows 11。
抱歉,如果标题具有误导性。
-
请注意,它不是吉特要求输入密码。这是ssh。 SSH 将您的密钥数据存储在加密文件中,并使用密码进行加密;而 ssh 没有节省密码,所以 ssh 需要再次输入密码德-crypt 文件,获取密钥。如果 ssh 无需解密文件即可获得密钥,则 ssh 将不需要密钥。如果 ssh 可以在不解密文件的情况下获取密钥,则密钥的安全性较低。你不能同时拥有它:选择一个并接受它。
-
请注意,ssh做通过它称为“ssh 代理”的东西提供一种折衷方案。在这里,代理人获取密钥,然后程序向代理询问密钥。代理需要密码(如果有),以便它可以解密并持有密钥。这意味着密钥仅在代理运行时可用,但如果有人破坏了代理,这本身就很糟糕。同样,你不能同时拥有它:选择一种方式(使用代理,不要使用代理)并接受它。
-
以及如何使用这个 ssh 代理?
-
在 Windows 上?我不知道。在 macOS 上,它是预安装的,您只需在任何终端窗口中运行
ssh-add。在 Linux 上,有很多安装它的选项。 -
也许它在带有 git bash 的 Windows 上是一样的。我回家后会试试
标签: git visual-studio-code gitlab ssh-keys windows-11