问题描述
项目托管在gerrit上,提交代码时使用不同的账号,导致在推送到gerrit评审时出现如下问题
email address xxx is not registered in your account, and you lack 'forge committer' permission
原因分析:
根据git日志提示,提交者的邮箱与gerrit上绑定的邮箱不一致
解决方案:
- 检查git push时的密钥,即当前 ~/.ssh/ 目录下的密钥对,是git提交时用户密钥,我一般通过用户公钥中携带的邮箱信息来确认,如果不一致,请将 ~/.ssh/ 的密钥对配置为一致
- 配置git config --list 和 git config --global --list中的user.email为提交者的邮箱信息
- 在原来的commit上进行git commit --amend修改下提交,最后git push origin master:refs/for/master即可成功