You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用SSH签名密钥执行Git Commit报错,求Linux Mint下解决方案

解决Git SSH签名提交报错的问题

问题根源

你遇到的error: unsupported value for gpg.format: ssh错误,是因为当前安装的Git版本低于2.34.0——Git从2.34.0版本才开始支持用SSH密钥签名提交/标签,旧版本不认gpg.format = ssh这个配置项。

解决步骤

  1. 检查Git版本
    先确认当前Git版本:
git --version

如果输出的版本号小于2.34.0,必须升级Git。

  1. 在Linux Mint上升级Git
    Linux Mint默认软件源里的Git版本通常偏旧,用官方PPA升级:
  • 添加Git官方PPA仓库:
sudo add-apt-repository ppa:git-core/ppa
  • 更新软件源索引:
sudo apt update
  • 升级Git:
sudo apt install git

升级完成后再用git --version确认版本已达标。

  1. 修正Git配置
    打开~/.gitconfig文件,调整配置:
  • 删除[gpg]段里的program = gpg(SSH签名不需要gpg程序)
  • 新增[gpg "ssh"]配置段指定签名工具(可选,但能避免潜在问题)
    最终配置示例:
[user]
    email = email@gmail.com
    name = username
    signingkey = /home/user/.ssh/id_ed25519.pub
[commit]
    gpgsign = true
[gpg]
    format = ssh
[gpg "ssh"]
    program = ssh-keygen

如果不需要S/MIME签名,[gpg "x509"]那段可以直接删掉。

  1. 验证SSH密钥权限
    确保SSH密钥文件权限符合要求,否则签名会失败:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_ed25519
chmod 644 ~/.ssh/id_ed25519.pub
  1. 测试提交
    重新尝试提交:
git commit -m "test ssh signature"

提交成功后,用git log --show-signature可以看到签名信息。

内容的提问来源于stack exchange,提问作者Alwin Aji

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 22:52:48