在当前分支上重现某些提交,每个提交会生成一个新的提交。
由于某些原因,我想要将 2 区域的一系列提交在 1 提交上重现。
也就是要构建出一条提交线,在这个提交线上,我是直接在 develop 分支上做的 2 区域的一系列提交

1、新建分支 tmp
目的是为了避免出错后,可以方便回退版本。如果操作成功,可以将 tmp 改成 develop 分支;如果操作失败,可以直接删除 tmp 分支,在重新建立 tmp 进行第二次尝试
2、执行 cherry-pick 命令
# 将 [8018cc4, b1673f517] 的提交在 tmp 上重新$ git cherry-pick 8018cc4^..b1673f517
3、可能遇到的冲突
在 git 自动执行的过程中,发现 feat: 分析结果查看 - 添加切换按钮 中有文件与当前文件有修改了同一个地方
在这个冲突中,需要保留两个红框中的内容


编辑器显示的冲突


4、解决完成冲突
解决完冲突后,查看 git 的状态,根据 git 提示执行后续操作
$ git cherry-pick --continue

5、再次遇到冲突

此时只需要“保留当前的修改”就好了
解决完冲突后,执行git cherry-pick --continue
6、最终结果

如果遇到冲突,解决冲突的时候要注意:
- 在当前提交处,文件应该是怎样的
- 使用对比工具对比冲突的地方时,传入的更改可能既包含本来要保留的内容,又包含要去掉的内容
