GIT错误: - 预期的提交者电子邮件''但找到'karan@xyz.com'

时间:2015-02-10 06:45:36

标签: git commit git-commit git-config

Git push被拒绝,并显示以下错误消息:

expected committer email '' but found 'karan@xyz.com'

我已经尝试过了:

  1. 在.gitconfig文件中设置使用属性。
  2. 尝试git push制作相同存储库的不同克隆。
  3. 格式化后将所有系统设置在一起。
  4. 但没有一个有效。我还能做些什么来解决它。

6 个答案:

答案 0 :(得分:34)

这对我有用

git config --global user.name "Correct Name" 
git config --global user.email name@email.com 
git commit --amend --reset-author

答案 1 :(得分:3)

这看起来不像git限制,但应该是远程端的某种预接收挂钩(您要推送的Git存储库托管服务/服务器)

该钩子似乎解析提交并根据拒绝karan@xyz.com的特定条件检查提交者电子邮件。
您应该与远程端管理员核实发生了什么。


OP Karan Singla确认in the comments这是服务器端的问题:

  

问题得到解决。管理员重新创建了我的帐户,现在工作正常。

答案 2 :(得分:0)

我建议打开git终端并设置正确的电子邮件。当我遇到同样的问题时,这对我有用。

git config --global user.email "your_correct_email@example.com"

答案 3 :(得分:0)

git config --list --show-origin

允许您查看设置来自的文件。 在我的情况下,这是一个无关的git设置文件,以某种方式将它放入我的便携式git安装。screenshot of file list

答案 4 :(得分:0)

也有类似的情况,如@VonC提到的那样,在尝试对空的内部Bitbucket Git存储库进行初始推送(包含我和其他同事的提交)时,涉及到钩子。在我的情况下,抱怨的是YACC(另一个提交检查器)钩子,另请参见此Atlassian article

但是,我没有使用全局禁用钩子(正如Atlassian文章所建议的那样),而是使用 empty 设置(覆盖了我的仓库的全局钩子设置)为我的仓库显式激活了它。 ),进行了最初的推送,然后再次在我的存储库中禁用了该插件(,该插件仍处于活动状态,但已配置了全局服务器设置!)。

答案 5 :(得分:0)

This work for me :
git config --global user.name "Correct Name" 
git config --global user.email name@email.com 
git commit --amend --reset-author
it will show the screen where you can edit the commit message, after edit or keep it as it is, then press escape and then :wq and hit enter
git push