[英]How to amend a specific commit message in Git?
沒有功能可以做到這一點,因為 git 內部如何工作,一個 sha1 密封每個提交。
但你可以:
如果消息是最后一次提交,請執行“修改”。
做一個git rebase -i
也命名了一個 rebase 交互,並為你想要重寫提交消息的每個提交選擇“reword”(或“r”)。
使用 git 'notes' 在現有評論旁邊加入新評論(但處理它並不簡單,因為您必須顯式推送注釋並查詢它們才能看到它們......)
假設分支類似於ABCDE
,並且您想修改 C。這是我更喜歡的一種解決方案:
git reset C --hard
#do some changes and add
git commit --amend
git cherry-pick C..E
#or git cherry-pick D E
git reflog
找到那個提交,然后找到它的 sha-id要進行該提交,請使用
git reset --hard sha-id
(如果您不想保留當前狀態的更改)
或者,
使用git reset --soft sha-id
(如果你想保留更改)
現在做一個提交——修改提交.....
現在,檢查您正在修改的 commit 是否已經被推送,
如果,是,然后做一個變基並推動它......
`git push ` and revert back your head to where it was earlier using its sha-id
如果您不執行上述步驟,您的分支將與遠程分支不同,您將在git status
中看到
否則,只需使用其 sha-id 恢復到您的提交
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.