本脚本主要复制粘贴自:https://www.jianshu.com/p/1a5c0228efb0
git代码,如果在提交后,还希望将当时的名字、邮箱全部修改掉,则需要对其进行rebase调整
具体步骤1,git 的bash窗口,创建bare仓库中,
git clone --bare https://github.com/用户名/库名.git
步骤2,将下面的名字、邮箱修改正确,脚本代码:
#!/bin/sh git filter-branch --env-filter ' OLD_EMAIL="XXX@gmail.com" CORRECT_NAME="YYY" CORRECT_EMAIL="YYY@gmail.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
步骤3,进入目录,并执行此脚本
步骤4,强推入gitee或github
git push --force --tags origin 'refs/heads/*'
后续,推库后,则bare仓库就没用,可以删除了。