在不触及直接子分支的情况下合并孙分支的更改?
Merge changes from grandchild branch without touching direct child?
我们有一个分支 a
。有人需要改进功能 B
他们计划使用 a
中的功能。所以他们从 a
分支出来,分支 b
。然后,有人想改进 a
中的特定功能以获得 B
性能的质的提升,因此他们从 b
分支出来并创建了 c
.
我的问题是,获得所有 更改的最佳方法是什么 具体添加 c
并将它们放入 a
而无需 b
。
在这种情况下你应该使用 Cherry Pick 吗?有更好的方法来完成这个吗?这会导致 git 中的混乱错误吗?
一种更简洁的方法是从 a
分支 c
,而不是 b
。
然后将 c
合并到 a
并在 a
之上变基 b
(或在 c
之上变基 b
,而 c
尚未在 a
上合并)。
如果您从 b 分支 c 和 cherry-pick,您稍后在将 b(可能包括 c 增强)合并到 a 时可能会遇到问题。
那是因为 cherry-picking 可以引入 duplicate commits and/or functional dependencies.
当您知道无论如何都不会合并那个 "one branch" 时,您通常会从一个分支挑选到另一个分支。
我们有一个分支 a
。有人需要改进功能 B
他们计划使用 a
中的功能。所以他们从 a
分支出来,分支 b
。然后,有人想改进 a
中的特定功能以获得 B
性能的质的提升,因此他们从 b
分支出来并创建了 c
.
我的问题是,获得所有 更改的最佳方法是什么 具体添加 c
并将它们放入 a
而无需 b
。
在这种情况下你应该使用 Cherry Pick 吗?有更好的方法来完成这个吗?这会导致 git 中的混乱错误吗?
一种更简洁的方法是从 a
分支 c
,而不是 b
。
然后将 c
合并到 a
并在 a
之上变基 b
(或在 c
之上变基 b
,而 c
尚未在 a
上合并)。
如果您从 b 分支 c 和 cherry-pick,您稍后在将 b(可能包括 c 增强)合并到 a 时可能会遇到问题。
那是因为 cherry-picking 可以引入 duplicate commits and/or functional dependencies.
当您知道无论如何都不会合并那个 "one branch" 时,您通常会从一个分支挑选到另一个分支。