Git修改commit之后作者和邮箱

52 阅读1分钟

在Git commit之后需要修改commit的作者和邮件名称

git filter-branch --env-filter '
OLD_EMAIL="<旧邮箱>"
NEW_NAME="<新作者名>"
NEW_EMAIL="<新邮箱>"

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

将要修改的邮箱地址替换掉旧邮箱 将新得user.name|user.email替换到新作者名和新邮箱中