700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 【Git】如何修改本地仓库的用户名和邮箱

【Git】如何修改本地仓库的用户名和邮箱

时间:2023-07-07 18:14:45

相关推荐

【Git】如何修改本地仓库的用户名和邮箱

最近我修改了我gitee和github的用户名还有邮箱,所以需要对本地仓库配置的用户名和邮箱进行更改

本文首发于 慕雪的寒舍

1.命令

刚开始我使用的是如下命令

git config --global user.email "邮箱"git config --global user.name "用户名"

但是很不辛,这个命令没有用,因为它是用来初始化你的git环境的,对已有的git仓库不起作用

但是我们在linux下可以添加上另外一个参数来实现

git config --global --replace-all user.email "邮箱" git config --global --replace-all user.name "用户名"

这样就修改成功了

这个命令在windows下似乎无法识别,会弹出git的命令行帮助

但是,修改成功后的提交,只对未来的提交有效;这里必须得吐槽一下gitee和github统计提交的不同之处

gitee统计提交依据的是用户名+邮箱,只要有一个不对就无法统计github统计提交只依据邮箱,只要你邮箱对了,用户名是不管你的

所以要想让gitee的统计能生效,那就必须要修改之前所有提交信息中的用户名和邮箱

2.修改之前提交中的用户名和邮箱

参考博客

复制如下代码到一个本文编辑器里面,将内部的邮箱和用户信息修改

git filter-branch -f --env-filter 'OLD_EMAIL="原来的邮箱"CORRECT_NAME="现在的名字"CORRECT_EMAIL="现在的邮箱"if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]thenexport GIT_COMMITTER_NAME="$CORRECT_NAME"export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"fiif [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]thenexport GIT_AUTHOR_NAME="$CORRECT_NAME"export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"fi' --tag-name-filter cat -- --branches --tags

随后将其粘贴到git命令行中,回车执行

执行完毕,就能看到所有git提交的用户名和邮箱都修改成功了!接下来要做的就是强制提交

git push -f

强制提交了之后,之前显示不出来的信息和小绿点,现在也能正常显示了

如果用上面的命令修改失败的话,那就尝试执行下面的命令

git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch Rakefile' HEAD

随后再重试上面的命令,应该就OK了

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。