大橙子网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

怎么修改git全部已提交的用户名和邮箱

这篇文章主要讲解了“怎么修改git全部已提交的用户名和邮箱”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么修改git全部已提交的用户名和邮箱”吧!

创新互联建站是一家集网站建设,泾川企业网站建设,泾川品牌网站建设,网站定制,泾川网站建设报价,网络营销,网络优化,泾川网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

即:修改git所有commit中的用户名和email

配置方法:

git config --global user.email "youremail@google.com"
git config --global user.name "your name"

但是补救措施只对以后的 commit 起效。如果想修改之前的作者信息,Github 给出了可靠的官方指南:Changing author info。我打算照做的时候却发现第三步要复制粘贴的脚本怎么也找不到…后来意识到是 Gist 被墙了 = = 魂淡!

挂上 SS 终于看到了完整脚本…把我翻译后的完整步骤贴到下面来。

 

改变作者信息

为改变已经存在的 commit 的用户名和/或邮箱地址,你必须重写你 Git repo 的整个历史。

警告:这种行为对你的 repo 的历史具有破坏性。如果你的 repo 是与他人协同工作的,重写已发布的历史是一种不好的习惯。仅限紧急情况执行该操作。

 

使用脚本改变你 repo 的 Git 历史

我们写了一段能把 commit 作者旧的邮箱地址修改为正确用户名和邮箱的脚本。

注意:执行这段脚本会重写 repo 所有协作者的历史。完成以下操作后,任何 fork 或 clone 的人必须获取重写后的历史并把所有本地修改 rebase 入重写后的历史中。

在执行这段脚本前,你需要准备的信息:

  • 欲修改的旧的邮箱地址

  • 正确的用户名和邮箱地址

1.打开终端(Mac 或 Linux 用户)或命令行(Windows 用户)。

2.创建一个你的 repo 的全新裸 clone (repo.git 替换为你的项目,下同)
git clone --bare https://github.com/user/repo.git
cd repo.git

3.复制粘贴脚本,并根据你的信息修改以下变量:
OLD_EMAIL
CORRECT_NAME
CORRECT_EMAIL

脚本:

#!/bin/sh

git filter-branch --env-filter '

OLD_EMAIL="your-old-email@example.com"
CORRECT_NAME="Your Correct Name"
CORRECT_EMAIL="your-correct-email@example.com"

if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
then
    export GIT_COMMITTER_NAME="$CORRECT_NAME"
    export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
fi
if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
then
    export GIT_AUTHOR_NAME="$CORRECT_NAME"
    export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
fi
' --tag-name-filter cat -- --branches --tags
 

4.按 Enter 执行脚本。

5.查看新 Git 历史有没有错误。

6.把正确历史 push 到 Github:(push 有困难时记得修改 DNS 或者搭×××)
git push --force --tags origin 'refs/heads/*'

7.清除临时 clone。
cd ..
rm -rf repo.git

All done!现在遗失的 contribution 都回来啦~新的一年记得在 Github 上勤打卡~

感谢各位的阅读,以上就是“怎么修改git全部已提交的用户名和邮箱”的内容了,经过本文的学习后,相信大家对怎么修改git全部已提交的用户名和邮箱这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


本文标题:怎么修改git全部已提交的用户名和邮箱
本文路径:http://dzwzjz.com/article/ipioji.html
在线咨询
服务热线
服务热线:028-86922220
TOP