Git修改提交歷史中的作者及郵箱資訊
阿新 • • 發佈:2021-06-18
1. 使用rebase
如圖,紅圈中提交的使用者名稱及郵箱是需要改的,則需要複製需要改的提交記錄的上一個記錄hashcode
,在本例中就是a0a891a48f92b51201042fccbe61ed12646eda5e
git rebase -i a0a891a48f92b51201042fccbe61ed12646eda5e
如果整個倉庫只有1次提交,即root提交,則需要用如下命令
git rebase -i --root
2. 此時進入編輯介面,記錄著commit的資訊,
3. 需要修改哪個commit就在行首將pick
改為edit
在本例中則需要改第一行
4. wq
儲存退出
儲存退出之後會返回如下內容
5. 修改使用者名稱及郵箱
git commit --amend --reset-author
命令執行後會進入提交日誌的編輯介面,我們僅需要修改使用者名稱及郵箱,不需要修改提交日誌資訊,wq
儲存退出即可
接下來此次提交的作者及郵箱會被修改為--local
級別的使用者名稱及郵箱,若該級別沒有設定,則會使用--global
級別的使用者名稱及郵箱
如果不想改全域性使用者名稱及郵箱的話,也可以手動指定使用者名稱及郵箱:
git commit --amend --author="otheruser <[email protected]>"
6. 結束rebase
git rebase --continue
再檢視提交記錄,可以看到提交的作者及郵箱已經改正了
7. 同步到遠端倉庫上
git push -f origin master