我有一些提交在“feature-1”分支中,它们是某个功能的一部分(我们称其为X功能)。在该分支中还存在来自主分支的合并,这意味着X功能可能分布在其他提交之间。
此外,请想象一下没有使用rebase,因此我们可能会得到像这样的结果:
J - K - L - M - N [master]
\ /(1)
- A - B - C - D - E [Branch feature-1]
上面的图表意味着:
- 提交J后创建了一个特性分支feature-1。 - 在主分支上执行了一些提交(K、L、M、N),它们可能来自外部功能。 - 特性分支feature-1上存在三个提交A、B、C。 - 在特性分支feature-1上发生了从主分支合并(1)到该分支的合并。 - 在特性分支feature-1上还存在两个提交来完成特性X。
图形表示如下:
J - K - L - M - N [master]
\
- A - B - C - K - L - M - N - D - E [Branch feature-1]
我们能否从feature-1中获得提交A、B、C、D、E,并将它们放入一个补丁文件中?
更新:还有一个很大的限制,即在提交E后,变更A、B、C、D、E也被合并到了主分支上,因此format-patch无法检测出feature-1上存在于主分支上不存在的内容。
feature-1
已经合并到了master
,但在问题中你又说master
已经合并到了feature-1
。 - Chris