前言
有时候,公司提交的代码必须使用公司邮箱,而你误操作,直接把自己个人邮箱提交上去了,此时你就会遇到这样的需求:如何修改git已提交的邮箱?(因为有些公司是不允许使用个人邮箱提交代码)
异常
master 分支合并到 develop 分支,执行 git push
操作时。
remote: Checking gitlab project <project-6468> remote: Ref <refs/heads/develop> receiving remote: Commit rev [fde93ea421c8b93b51ebfbd47ec6bebb9641696a] - Invalid commiter email <123@qq.com> remote: Check and confirm : https://wiki.xxx.cn/x/2tGsEw to correct your committer email address To git-biz.xxx.cn:news/test.git ! [remote rejected] develop -> develop (pre-receive hook declined) error: failed to push some refs to 'git-biz.xxx.cn:news/test.git'
解决
第一步,使用 git log
命令,查找提交记录
第二步,如图所示,你可以找到你想修改的那次记录的 commit id
第三步,使用 git reset –soft [版本号] 命令进入你的提交记录
第四步,使用 git commit --amend --author='用户名 <邮箱>'修改
git commit --amend --author=‘javapub javapub@yahu.com’
第四步,修改完文件,退出 vim(一直按住esc ,再连续按大写的z)(可靠,就这样操作)
第五步:使用 git push 提交代码