1.首先确认是否有权限,如有权限的情况下那就是配置有问题了
我的情况是,能拉取代码,提交的时候出现这种情况:Commits must have verified signatures
这里是生成证书,如果已经生成过的,就不用生成了
ssh-keygen -t ed25519 -C "zhangsan@abc.com"
我生成的证书公钥路径:/root/.ssh/id_ed20240305.pub
cat id_ed20240305.pub
内容:ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBB+xBN7xb4jD2hP8d2QXwTuxSHlOE/kNwvAA909Ab5
把这串东西粘贴到github上面:
需要注意的是,需要填写auth key和sign key ,为了方便我两个都填写成刚才的内容
填写完之后git clone xxxx 项目地址这样应该是能正常拉取代码的,但是还不能推送代码,推送代码还要在对应的项目目录下设置一下:
git config gpg.format ssh
git config user.signingkey /root/.ssh/id_ed20240305.pub
(ps "git config user.signingkey" 是固定的,这句话,你只需要改变后面的路径即可)
git config commit.gpgsign true
最后在git commit -a -m "xxx" && git push 这样可以了