git push 报错:
error: commit 8aa8e31: email address xxxxxx@haustart.com is not registered in your account,

错误是说邮箱没有注册,用git config 查看了user.email 和user.name ,不知道什么时候更改了名字和邮箱。
修改名字和邮箱有两种办法
第一种办法解决
第一步:git config --global user.name 你的名字
第二步:git config --global user.email 你的邮箱
第三步:git commit --amend --reset-author

第二种办法解决
第一步:vim ~/.gitconfig //进入vim模式修改文件
第二步:i //进入vim模式的编辑模式
第三步:去编辑你的name和email
第四步:esc //进入vim模式的普通模式
第五步::wq //退出vim模式
修改完名字和邮箱之后,我们需要
1.Reset Current Branch to Here(选择mixed) //重置到上次提交位置
2.git push origin HEAD:refs/for/master //重新提交

结束!!!
有像我一样倒霉蛋的朋友在Reset Current Branch to Here时(选择Hard),慌了!!!找不到提交的代码了!没关系,我带你找回!
第一步:git log -g //查看所有的提交日志,看到你那次提交的commitId,比如commitId为【fc13fc3c79b806feb1fdce8dfdb29675df701087】。记下来,我们要用。
第二步:git branch 新分支名字 fc13fc3c79b806feb1fdce8dfdb29675df701087 //新分支名字是(本地没有的),那串长的是你刚才记录的commitId。
接下来就是合并分支了,想将新分支合并到master分支,操作如下:
第三步:git checkout master //切换到master分支上
第四步:git pull origin master //如果是多人开发的话 需要把远程master上的代码pull下来,保证代码是最新的
第五步:git merge dev //把新分支的代码合并到master上
第六步:git push origin HEAD:refs/for/master //重新提交
网友评论