问题背景
第一次设置邮箱设置的为global邮箱,并且设置的不是远程仓库账号绑定的邮箱,记正确绑定的邮箱为rE(RightEmail),记这不正确的邮箱为wE(WongEmail)。
导致问题
操作流程:
- 拉主开发分支代码
- 修改内容并commit到本地,此时会产生git log,log包含邮箱信息wE
- push到远程分支前,git不仅会扫描并判断远程绑定的邮箱与本地设置的邮箱是否匹配,还会检测git log中是否包含其他非法信息,已知(2.)中产生了非法信息wE,所以push时会rejected
如何解决
【法1】
- 根据log指示走个流程,设置局部账户和邮箱与远程对应,并且下载并执行./git-m命令,但是你下次拉新项目时,问题依然存在,又需要重复操作。
【推荐 法2】
- 设置全局邮箱命令如下,即可从根本解决push rejected问题
$git config --global user.name "yourgitHubName"
$git config --global user.email "yourgitHubEmail"