Git 重基期间的樱桃采摘

Git 重基期间的樱桃采摘,git,Git,我正在将提交向后移植到Linux内核的本地实例上。让我们将分支称为上游和本地 我已经选择了提交系列,比如说,Upstream~10..Upstream到Local。我已经解决了冲突,现在正在交互重定基来编辑提交,以便实际构建和工作[1]。我需要拉入提交系列的依赖项(和可传递依赖项) 当我在交互重基过程中进行cherry pick时,它会将提交转储到我的阶段,而不是在我选择编辑的提交之后将提交插入到树中。我如何做到这一点或类似的事情 我能想到一些不好的选择,但没有好的: 手动提交:复制粘贴旧的提交

我正在将提交向后移植到Linux内核的本地实例上。让我们将分支称为上游本地

我已经选择了提交系列,比如说,Upstream~10..UpstreamLocal。我已经解决了冲突,现在正在交互重定基来编辑提交,以便实际构建和工作[1]。我需要拉入提交系列的依赖项(和可传递依赖项)

当我在交互重基过程中进行cherry pick时,它会将提交转储到我的阶段,而不是在我选择编辑的提交之后将提交插入到树中。我如何做到这一点或类似的事情

我能想到一些不好的选择,但没有好的:

  • 手动提交:复制粘贴旧的提交消息,修复作者/etc,然后稍后修复修补程序顺序(依赖项可能应该首先进行)
  • 中止rebase,选择提交,然后重新启动交互式rebase(并将选择的依赖项移到前面)
  • 选项2,但将任何部分工作放入存储库并
    git-rebase——继续执行
    ,直到结束,而不是使用abort
  • 让步,并将依赖项修改到我正在编辑的提交上 这些选择似乎都不是很好,而且似乎应该有更好的选择。特别是当我开始重定基址和中间重定基址时,我意识到我需要一些特别的承诺。有办法解决这个问题吗?选项3可能是我最终要做的,但感觉有点乏味

    答案似乎是否定的,因为在重基过程中选择cherry可能需要嵌套合并冲突解决会话(不确定是否有名称),这听起来对git来说相当难实现


    [1] 如果我更聪明的话,我可能会在最初的樱桃采摘期间这样做,但我不确定会有什么不同。

    你能给出一个更具体的例子来说明“补丁”是什么意思吗?将所有补丁实例替换为提交。混合使用不同上下文中的术语。将修补程序系列称为提交系列似乎很奇怪,但不管怎样。我最终放弃了交互式重基,再次签出了Local,并从依赖项和旧的Local中交替选择Cherrypicks。Local-With-Upstream-Cherrypicks。你能给出一个更具体的例子来说明“修补程序”的含义吗?将修补程序的所有实例都替换为提交。混合使用不同上下文中的术语。将补丁系列称为提交系列似乎很奇怪,但不管怎样。我最终放弃了交互式重新基址,再次签出本地,并将依赖项和旧本地..本地与上游Cherrypicks交替使用。