Git:多个分支上的相同功能,但不在主分支上

时间:2014-08-06 03:43:51

标签: git

我们的供应商提供了在其硬件上运行Linux内核的代码,但是有两个内核版本 - 一个用于Android(内核2.6),另一个用于Yocto(内核3.01)。 现在我已对硬件进行了一些修改,并添加了一些驱动程序来支持内核2.6中的新硬件,如X和Y所示,但我想对3.01应用相同的更改。

现在:

   E -- F -- G -- X -- Y (2.6)
 /
A -- B -- C -- D (master)
      \
       H -- I -- J (3.01)

后:

   E -- F -- G -- X -- Y (2.6)
 /
A -- B -- C -- D (master)
      \
       H -- I -- J -- X -- Y (3.01)

最好的方法是什么?我读过樱桃采摘,这不是一个好习惯。 因为我的硬件与主线内核开发完全无关,所以我想避免触及主服务器。

有什么建议吗?谢谢!

1 个答案:

答案 0 :(得分:2)

您的提交图是不可能的。您不能对不同的祖先进行两次不同的XY次提交。 Git 不能这样做,没有可以生成该提交图的解决方案。

答案是(良好实践与否)樱桃采摘,以及如下所示的提交图:

   E -- F -- G -- X -- Y (2.6)
 /
A -- B -- C -- D (master)
     \
      H -- I -- J -- X' -- Y' (3.01)

X'Y'XY的精选版本。

无论是什么使你认为它不是一个良好的做法"无关紧要;这是获得你之后的结果的唯一途径。