重命名合并的提交而不丢失该提交的父级

Rename a merged commit without losing that commit's parents

TL;DR:是否可以在不破坏历史记录的情况下重命名合并(无快进合并)分支的提交?

我想重命名一个提交。类似于 rebase --interactive HEAD~5。但我想让 HEAD 保持在当前位置。 Rebase 将扁平化 日志。

我正在使用功能分支

*   c3cb3ad - Merge branch 'featureX' into develop (15 minutes ago) <FOO>
|\  
| * d945c71 - Did stuff (17 minutes ago) <FOO>
| * d4356f4 - inline commits are aweosm <FOO> (27 minutes ago) <LSC>
|/  
*   6ef9569 - bla bla bla

我就是这样 git:

~/dev/foo/ (develop)$ git checkout -b featureX
~/dev/foo/ (featureX)$ git add foo.html
~/dev/foo/ (featureX)$ git commit -m "inline commits are aweosm"
~/dev/foo/ (featureX)$ git checkout develop
~/dev/foo/ (develop)$ git merge --no-ff featureX
~/dev/foo/ (develop)$ git branch -D featureX
~/dev/foo/ (develop)$ git add bar.html
~/dev/foo/ (develop)$ git commit -m "Lorem Ipsum"

...哦废话。我的提交消息中有错字!

git rebase--preserve-merges

结合使用