【Git】如何修改本地仓库的用户名和邮箱
最近我修改了我gitee和github的用户名还有邮箱,所以需要对本地仓库配置的用户名和邮箱进行更改
1.命令
刚开始我使用的是如下命令
1 | git config --global user.email "邮箱" |
但是很不辛,这个命令没有用,因为它是用来初始化你的git环境的,对已有的git仓库不起作用
但是我们在linux
下可以添加上另外一个参数来实现
1 | git config --global --replace-all user.email "邮箱" |
这样就修改成功了
这个命令在windows下似乎无法识别,会弹出git的命令行帮助
但是,修改成功后的提交,只对未来的提交有效;这里必须得吐槽一下gitee和github统计提交的不同之处
- gitee统计提交依据的是用户名+邮箱,只要有一个不对就无法统计
- github统计提交只依据邮箱,只要你邮箱对了,用户名是不管你的
所以要想让gitee的统计能生效,那就必须要修改之前所有提交信息中的用户名和邮箱
2.修改之前提交中的用户名和邮箱
复制如下代码到一个本文编辑器里面,将内部的邮箱和用户信息修改
1 | git filter-branch -f --env-filter ' |
随后将其粘贴到git命令行中,回车执行
执行完毕,就能看到所有git提交的用户名和邮箱都修改成功了!接下来要做的就是强制提交
1 | git push -f |
强制提交了之后,之前显示不出来的信息和小绿点,现在也能正常显示了
如果用上面的命令修改失败的话,那就尝试执行下面的命令
1 | git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch Rakefile' HEAD |
随后再重试上面的命令,应该就OK了
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 慕雪的寒舍!
评论