假设我有一个master
和develop
分支。 develop
拥有master
没有的代码。我从develop
分支并创建feature
,编写一些新代码,将其合并到develop
中(以进行分阶段测试)。然后,我决定将feature
合并到master
中,但包括develop
中不在主数据库中的所有内容,而我现在不想合并。如何使feature
拥有我添加的代码,就像它是从master
而不是develop
分支出来的一样?我已经阅读了一些有关rebase和Cherry-pick的文章,但是我可以看到与我的例子完全一样的示例(其中feature
已经合并到develop
中)
答案 0 :(得分:0)
我会说
git rebase --onto master develop feature
然后将其合并到母版中
git merge master
如果需要,您可以创建中间分支名称。
答案 1 :(得分:0)
从develop
分支获取提交列表。
git checkout develop
git log
并获得提交hash-number
。示例提交hash-number
:
commit 0ef6a22f4a4bd1dc4561dab413a9ff09780d18c0
获取提交哈希之后。结帐母版和Cherry逐个从develop
到master
进行提交。最好从较早的提交到较新的提交,以避免更多的合并冲突。
git checkout master
git cherry-pick hash-number