git修改提交記錄的用戶信息


起因

由於電腦配置git的賬號,填錯了郵箱, 導致github的提交記錄不會被統計,如下,沒頭像的則不屬於當前的github賬號的,所以不統計代碼:

為了將之前的提交用戶信息都恢復至正確的賬號上, 所以需要修改本地的git用戶信息。

修改username 和 email

在項目目錄中打開

修改 user.name 和 user.email

$ git config user.name 'xxx'
$ git config user.email xxx@xx.com

查詢之前的提交記錄

git rebase -i HEAD~N

N:這里的N代表之前的提交記錄, 輸入1就是上1次, 輸入3就是前3次的記錄

輸入完成之后,會顯示所有的記錄,如下所示:

每個記錄都是pick id xxxx 的一條記錄, 如果需要修改某一次的提交

切換至英文輸入法, 按下i字母, 即可進入編輯模式, 此時用光標定位到需要修改的那一條記錄, 將pick修改成edit, 如下所示:

按下esc按鍵, 然后輸入:wq (wq表示修改后保存退出), 按下Enter鍵, 此時界面如下所示:

接着輸入下面命令:

git commit --amend --reset-author

解釋: 上面這段命令的意思就是: git 提交 -- 修改 -- 重置 - 作者

繼續輸入下面命令:

git rebase --continue

最后執行下面命令:

git push --force  origin  master

注意: 很重要的一點是,你最好保證在你強制push之前沒有人提交代碼,如果在你push之前有人提交了新的代碼到遠程倉庫,
然后你又強制push,那么會被你的強制更新覆蓋。

結束

修改之后, github上面顯示正常,如下所示:


免責聲明!

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



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