Git設置舊郵箱與現郵箱不一致問題


設置名字和郵箱
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_EMAILCORRECT_NAMECORRECT_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
 
 
        
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM