假设我有3次提交:

Added bar.txt     (3)
Second Commit     (2)
Initial Commit    (1)

如何通过使用其SHA ID从(2)更改提交消息?
提交尚未推送到远程存储库。

我试过了:git commit --amend -m "Added foo.txt" 84579318457931是SHA ID的前7个数字。

为什么这不是重复的原因:
我问如何通过使用SHA ID指向我要更改的提交来更改提交消息,这与链接的问题不同。

最佳答案

进行交互式 rebase ,这在https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History中进行了描述

git rebase -i HEAD~2

将所有标记为“选择”(仅保留该提交)或“reword”以更改消息。请注意,所有这些提交都将被重写,因此最好不要比origin/HEAD点更深入

编辑:您需要基于有问题的提交的父级(请注意sha后的~1)
git rebase --interactive <your_sha>~1

现在将打开一个文件:
pick b35b85c second commit
pick 9cc745b Initial commit

搜索目标提交所在的行,并将pick更改为reword:
reword b35b85c second commit
pick 9cc745b Initial commit

保存文件。现在将打开另一个文件,删除第一行并将其替换为新的提交消息。保存文件。完毕。

关于git - 使用SHA ID修改来自较早提交的评论消息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34269864/

10-13 07:29
查看更多