Git无法删除以前配置的用户信息 user.email

最近一次提交源码的时候,提示提交失败。检查了一下错误提示发现是用户的邮箱写错了的。
然后我在home下

  1. git config --unset --global user.email "user.name@email.com"命令删除了git之前配置的信息(执行上条命令后并未用命令检查已存在的user.email),
  2. 添加正确的邮箱,并且用git config --list检查无误
  3. 进入项目目录再次提交,提交失败。邮箱错误。

git config --list查看配置信息发现之前删除的user.email又回来了(其实是没删除到,因为在home目录根本没有错误的邮箱)!而且同时存在两个!此时再尝试用git config --unset --global user.email "user@email"删除user.email却删除不掉了!
如此几番过后决定去项目目录里找寻一下线索。
然后在项目目录的./git/config中发现了之前设置的错误的邮箱:

[user]
    user.email=user.name@email.com

然后我在进入项目目录后,再git config --unset user.email "user@email"(注意:没有--global,错误的邮箱是项目中的不是全局的),然后--list检查已配置的信息,错误的邮箱不见了。
再次提交,成功!

原因分析:
第一次“修改“user.email”的后查看结果没有看到错误的邮箱是正常的,因为当时我在home目录下,这里的信息配置是真正global的,并没有读取到项目里的配置信息。
但是在项目目录下错误的邮箱又出来了,是从项目自己的配置文件中读出来的,错误的邮箱就是保存在这里!此时再--unset就可以把错误的邮箱删除掉了。

Comments
Write a Comment