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

Git提交报错:Load key无效格式,临时密钥路径存疑求助

解决Git提交时临时路径密钥无效的问题

问题分析

报错指向临时路径的密钥文件,大概率是Git提交签名配置混乱(比如混用GPG与SSH签名规则),导致Git自动生成的临时签名密钥格式不兼容;也可能是系统临时目录权限异常,使得临时密钥文件损坏。

解决方案

1. 检查并修正Git签名配置

先查看当前Git的签名相关配置:

git config --list | grep -E 'gpg|signing'

如果要使用SSH密钥签名提交,确保配置如下:

# 开启提交签名
git config --global commit.gpgsign true
# 指定SSH公钥作为签名密钥
git config --global user.signingkey ~/.ssh/id_rsa.pub
# 设置签名格式为SSH
git config --global gpg.format ssh
# 指定SSH程序路径(根据系统调整,macOS默认是/usr/bin/ssh)
git config --global gpg.ssh.program /usr/bin/ssh

如果之前误配置了GPG签名,先清理相关配置:

git config --global --unset gpg.program
git config --global --unset user.signingkey

2. 排查环境变量干扰

检查是否有异常环境变量影响Git签名:

env | grep -E 'GIT|GPG'

如果看到GIT_SIGNING_KEY等指向临时路径的变量,执行unset清除:

unset GIT_SIGNING_KEY

3. 验证SSH密钥有效性

确认本地SSH密钥格式正常:

ssh-keygen -l -f ~/.ssh/id_rsa

正常情况下会输出密钥的长度、哈希等信息;如果报错,说明密钥本身有问题,重新生成:

ssh-keygen -t rsa -b 4096 -C "your-email@example.com"

同时测试密钥能否连接Git服务器(替换为你的服务器地址):

ssh -T git@github.com

4. 检查临时目录权限

macOS下临时目录/var/folders/...权限异常可能导致临时文件生成失败,执行以下命令修复:

sudo chmod 1777 /var/folders

额外说明

如果以上步骤都无效,尝试重新初始化本地仓库(注意备份代码):

mv .git .git.bak
git init
git remote add origin <你的仓库地址>
git fetch
git reset --hard origin/main

内容的提问来源于stack exchange,提问作者Jérôme Guérin

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 19:55:22