关于git:变更Github上历史commit的用户名和邮箱的方法

环境

  • Window 10
  • Git Bash

先确认历史记录

谬误的用户名是wrongName,邮箱是wrongMail@example.com

git log --pretty=full

commit 000111000111000111000 (HEAD -> master, origin/master)
Author: wrongName <wrongMail@example.com>
Commit: wrongName <wrongMail@example.com>

变更办法

设置正确的用户名

newName=correctName

设置正确的邮箱

newEmail=correctMail@example.com

批改本地git的提交信息

git filter-branch -f --env-filter "GIT_AUTHOR_NAME='$newName'; GIT_AUTHOR_EMAIL='$newEmail'; GIT_COMMITTER_NAME='$newName'; GIT_COMMITTER_EMAIL='$newEmail';" HEAD

再确认历史记录,发现曾经被批改为正确的了

git log --pretty=full

commit 000111000111000111000 (HEAD -> master, origin/master)
Author: correctName <correctMail@example.com>
Commit: correctName <correctMail@example.com>

GitHub

强行push,把方才批改的提交到github

git push -f

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理