當你辛苦做一個項目肯夏,而且還很完美的提交所有內容摩桶,突然某天發(fā)現git的用戶名錯了或者是郵箱錯了,這對一個程序員或者是強迫癥患者來說是多么痛苦的一件事茂缚。
不用擔心戏罢,下面告訴大家如何修改所有提交記錄中的用戶名和密碼。
在git倉庫目錄下新建一個文件 “fix_name_email.sh” 脚囊,把下面內容拷貝到新建的文件中并保存龟糕,將權限設置為777,在終端執(zhí)行?“./fix_name_email.sh” 即可悔耘。是不是很簡單呀翩蘸!
#!/bin/sh
git filter-branch --env-filter '
OLD_EMAIL="eker_ch@foxmail.com"
CORRECT_NAME="eker"
CORRECT_EMAIL="eker.ch@foxmail.com"
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
fix_name_email.sh是shell腳本文件,它所做的事情就是遍歷所有提交記錄淮逊,對比郵箱催首,如果發(fā)現不一樣的就更改成新的郵箱。