修改git提交的名字和郵箱


由於有些規定,要保密個人信息,只能通過這種方法來把個人信息給過濾掉。
修改OLD_EMAIL為要替換的舊郵箱,NEW_NAMENEW_EMAIL為新的個人名字和郵箱,修改完成后強制更新到服務器。
這樣只能一個人一個人的修改,其他人重新克隆倉庫,如果要修改文件內容,請看初次使用 git 的“核彈級選項”:filter-branch 從倉庫中刪除文件

#!/bin/bash

git filter-branch --env-filter '
    OLD_EMAIL="rise.worlds@outlook.com"
    NEW_NAME="rise"
    NEW_EMAIL="rise.worlds@live.com"
    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
# 覆蓋到遠程倉庫
# git gc
# git push --force --tags origin 'refs/heads/*'

如果要針對個別的倉庫這樣,要在完成后在倉庫中設置新的名字和郵箱

git config user.name 'rise'
git config user.email 'rise.worlds@live.com'


免責聲明!

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



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