重命名合并的提交而不丢失该提交的父级
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
结合使用
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