設置名字和郵箱
git config user.name 'lhr'
git config user.email 'lhr@qq.com'
工程根目錄創建email.sh文件
粘貼以下代碼
#!/bin/sh
git filter-branch --env-filter '
OLD_EMAIL="fphd_xian_lufei@fphd"
CORRECT_NAME="sy-records"
CORRECT_EMAIL="52o@qq52o.cn"
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
把OLD_EMAIL
、CORRECT_NAME
、CORRECT_EMAIL
改成自己的新舊郵箱用戶名即可
然后我們來執行一下這個.sh
文件: ./email.sh
Linux/Mac下需要賦予執行權限:
chmod +x email.sh
git日志較多執行時間會長,成功后再查看git log
可以看到已經修改成功
如果執行失敗的話,執行一下這段命令
git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch Rakefile' HEAD
再運行./email.sh
腳本
這時候雖然本地修改成功了,但是你還沒有推送到遠程
所以再執行一下命令
git push origin --force --all
原創文章采用CC BY-NC-SA 4.0協議進行許可,轉載請注明。轉載自:修改Git全部Commit提交記錄的用戶名Name和郵箱Email