如何输入 Git SSH 密钥的密码?

Posted

技术标签:

【中文标题】如何输入 Git SSH 密钥的密码?【英文标题】:How can I type the passphrase for a Git SSH key? 【发布时间】:2021-11-29 22:48:59 【问题描述】:

我想在 Git 上生成一个 SSH 密钥,但我被困在密码短语部分:我无法键入它。密码短语字段显示时没有任何字符,即使我正在输入它们。

$ ssh-keygen -t ed25519 -C "my_email@email.com"
Generating public/private ed25519 key pair.
Enter file in which to save the key (/c/Users/me/.ssh/id_ed25519):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Passphrases do not match.  Try again.

如您所见,我无法输入任何内容。有一些类似的问题,人们说文本是隐藏的,但从技术上讲,你仍然可以输入它。问题是 Git 说密码在两个字段上都不匹配,即使我在这两个字段上都输入了相同的字符。我在 Windows 10 上,安装了最新的 64 位 Git 版本。

只是说清楚,这是我的目标:

创建一个 SSH 密钥,这样我就不需要在每次将文件推送到我的 GitHub 存储库时输入我的 GitHub 凭据。

【问题讨论】:

只是为了测试这一点,按两次键盘上的 ENTER(或 RETURN 或任何标记的键),以便您使用无密码的情况。如果可行,请尝试使用单字母密码,这样就不会出错,并延长直到它停止工作:可能在 Windows 10 上有一些最大长度,或者其他什么。 【参考方案1】:

正如@torek 所说:

在键盘上按两次 ENTER(或 RETURN 或任何标记的键),以便您使用无密码短语 [...]

成功了!

【讨论】:

【参考方案2】:

另一种方法是在 CMD 中直接输入密码。

ssh-keygen -t rsa -q -f yourFile -N "<your passphrase>"

(在带有 W10 的 CMD 中测试,%PATH% 引用 C:\Program Files\Git\usr\bin,其中 ssh-keygen.exe 是)

如果您想要设置密码:

ssh-keygen -t rsa -q -f yourFile -P ""

在这两种情况下,目标是必须键入任何 ENTER:没有提示回答。

【讨论】:

以上是关于如何输入 Git SSH 密钥的密码?的主要内容,如果未能解决你的问题,请参考以下文章

最简单的 Mac配置gitlab ssh密钥方法

如何设置 git bash 重启后我不必为 ssh 输入密码?

为啥 ssh 不要求时 git 要求输入密钥密码?

Bitbucket 上的 Git:即使在上传了我的公共 SSH 密钥之后,也总是要求输入密码

如何使用ssh-keygen生成key

使用SSH密钥连接Github