Git 修改 commit 的作者信息
今年的目标就是github上的contributions想尽量满一点,结果刚一开始就发现了问题?我自己提交的代码提交人和头像却显示的不是我,这样的我contributions都是空白的....so...
修改代码如下:
git config --global user.email "youremail@googl.com"
git config --global user.name "your name"
补救措施只对以后的 commit 起效, 如果想修改之前的作者信息, Github 给出了官方指南Changing author info
亲测可行,步骤如下:
修复 git 历史提交信息
为了修改 commit 的作者邮箱地址,你必须重写整个 git 仓库历史,这个操作会破坏你的仓库历史。建议只在紧急情况操作。
操作步骤:
- 打开 bash
- 新建一个全新的仓库信息
git clone --bare https://github.com/用户名/库名.git
cd repo.git
- 将中文地方修改正确,并在终端站粘贴下面的代码:
#!/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
- 将修改后的仓库历史推到远程,删除这个仓库
git push --force --tags origin 'refs/heads/*'
cd ..
rm -rf repo.git