今天有位新同事在comit代码的时候一直报这个错误: gpg failed to sign the data fatal: failed to write commit object。
看到网上说gpg是一种加密解密的软件,但是我想想他根本就没用gpg这个东西,我就想估计是配置错误了。果然是这个原因。那接下来就说说这个问题的解决方案了。
1、使用 git config --list 查看有没有:commit.gpgsign=true 如果这项为true关闭掉,即可。
开启GPG签名commit:git config commit.gpgsign true
;
关闭:git config commit.gpgsign false;
2、关闭之后,一般是不会有问题的了。如果又说 邮箱不对的话呢,就需要自己本地配置下,用户名和邮箱
git config user.name='你的用户名' git config user.email='zz@163.com';
这样就可以解决(你没有开启gpg,然后报了上面的错)这个问题了。
题外话:
先来讲讲git一些基本知识和基本操作。
第一点:如果碰到了git错误,先不用急,先把错误信息看懂,因为git现在做得很成熟,一般是可以从错误信息里面找到解决方案。
第二点:很多git错误,都是因为配置不正确引起的,所以要了解清楚git配置项的意思,一般看英文都知道啥意思,不明白可以自己去查查。
常用的操作git config命令
gitconfig这个东西,分为三个层面 system global local;system是从操作系统层面来讲的配置(很少用到),global是从你整个git环境来讲的,比如你让一个用户名 --global, 那么他就可以在所有仓库下使用。local 可以理解为就是针对当前仓库。
查看配置项目:git config --list
添加配置项目:git config add
修改配置项目: git config 配置名称 值
删除配置项目: git config [--system|--local|--global] --unset 配置名称