为什么使用 SSH 密钥签名提交失败并显示“格式无效”?和“无法写入提交对象”?

Bra*_*rek 12 git signing ssh-keys git-for-windows

我按照GitHub 的说明告诉 git 我的 SSH 密钥,但是当我尝试签署提交时

git commit -S
Run Code Online (Sandbox Code Playgroud)

我收到这个错误:

error: Load key 
"C:\\Users\\MyName\\AppData\\Local\\Temp/.git_signing_key_tmpC5KwFc": invalid format?

fatal: failed to write commit object
Run Code Online (Sandbox Code Playgroud)

我可能做错了什么?

Bra*_*rek 23

设置

为了让 Git 成功签署提交,

  1. Git(v2.34 或更高版本)需要知道您的 SSH 密钥
  2. ssh-agent 需要运行
    • eval "$(ssh-agent -s)"开始它
    • (Windows 可以被告知自动启动它;Mac 和 Linux 已经这样做了。)
  3. ssh-agent 需要有您的密钥
    • ssh-add -L列出现有的密钥
    • ssh-add ~/.ssh/id_ed25519添加您的密钥

签约

然后您应该能够签署提交!

git commit -S

正在验证

有关验证 SSH 签名提交的更多信息。

  • 当我将 RSA 密钥添加到 ssh-agent 时,我的问题得到了解决。 (2认同)