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

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

20200320104547383.png

错误是说邮箱没有注册,用git config 查看了user.email 和user.name ,不知道什么时候更改了名字和邮箱。

修改名字和邮箱有两种办法
第一种办法解决
第一步:git config --global user.name 你的名字
第二步:git config --global user.email 你的邮箱
第三步:git commit --amend --reset-author


111.png

第二种办法解决
第一步: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 //重新提交


222.png

结束!!!

有像我一样倒霉蛋的朋友在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 //重新提交

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 文章略长,预计阅读时间28分钟 一.git init 知识点: 创建版本库的两种方式可以创建git-demo目录,...
    shuxiaotai阅读 430评论 0 0
  • 一,.gitignore文件的配置 在提交代码的时候,有些东西比如.idea这类本地的文件,是不需要提交到远程的,...
    好多可乐阅读 557评论 0 4
  • 昨天在同事电脑上操作了一把cherry-pick代码,发现很多功能不用,就慢慢忘记了,梳理了下流程图: git c...
    gogoingmonkey阅读 708评论 0 0
  • 1.git是什么呢?维基百科给出的定义: git是一个分布式版本控制软件,最初由(Linus Torvalds)创...
    DdShare阅读 173评论 0 0
  • 初始化项目 Git 全局设置: 创建 git 仓库: 已有仓库? Git 三大分区 下面介绍一些git里面比较常见...
    Simple_Code阅读 604评论 0 1