[英]How to change the root branch that was branched off of
假设我有一个master
和develop
分支。 develop
具有master
没有的代码。 我从develop
和创建feature
分支出来,编写一些新代码,将其合并到develop
(以进行调试和测试)。 然后,我决定将feature
合并到master
,但将develop
中不包含在master中的所有内容都包括在内,而我现在不想合并。 我如何才能使该feature
具有我添加的代码,好像它是从master
分支出来的,而不是develop
? 我已经阅读了一些有关rebase和Cherry-pick的文章,但是我可以看到与我的例子完全一样的示例(其中的feature
已经合并到develop
)
我会说
git rebase --onto master develop feature
然后将其合并到主
git merge master
您可以根据需要创建中间分支名称。
从develop
分支获取提交列表。
git checkout develop
git log
并获取提交的hash-number
。 样本提交hash-number
: commit 0ef6a22f4a4bd1dc4561dab413a9ff09780d18c0
获得提交哈希之后。 Checkout主管和Cherry逐一挑选从develop
到master
的提交。 最好从较早的提交到较新的提交,以避免更多的合并冲突。
git checkout master
git cherry-pick hash-number
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.