[Github实战]批量修改git commit记录中的用户名和邮箱

602 阅读1分钟

批量修改git commit记录中的用户名和邮箱

1.git项目目录下创建一个脚本文件

rename.sh
#!/bin/sh

git filter-branch --env-filter '

OLD_EMAIL="原邮箱地址"
CORRECT_NAME="新用户名"
CORRECT_EMAIL="新邮箱地址"

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

2.执行rename.sh

windows环境可通过git-bash.exe执行脚本

3.通过git log查看是否已修改完毕

git log

4.同步远程仓库

git push origin --force --all