我有一个功能分支:
feature
比如说有10个提交记录
前段时间,我开始对其进行实验,但是为了保留当前功能,我创建了一个新的分支:
feature-experiment
然后又进行了10次提交。
今天我决定将feature-experiment
与feature
合并,然后删除feature-experiment
。出现了一些合并冲突,我解决了这些冲突。
接着,我的20次提交都使用了相同的名称并以WIP
(即工作正在进行中)结尾,看起来很丑,所以我决定:
git rebase -p -i HEAD~22
我将pick
改为s
,以将它们全部压缩到此功能的最旧提交中,但我遇到了一些合并冲突(与之前相同)。我解决了它们,然后
git add -A && git commit
git rebase --continue
但现在我遇到了以下错误:
error: Commit asd123qsd is a merge but no -m option was given.
fatal: cherry-pick failed
Could not pick asd123qsd
这是最终提交(合并提交)
我再次尝试,但这次我没有将这个特定提交的pick
改为s
,但仍然收到了相同的错误。
我该如何完成这个可怕的rebase操作?
我想作为可能的解决方案,我可以修改最后一个提交以添加“-m”,但我该如何做,并且如何使用这个“-m”命令?是否还有其他选项?
--preserve-merges
标志... - Ajedi32-p
)。 - Kaloyan Roussev