如何在Git中创建合并基础?

时间:2017-01-28 00:44:32

标签: git

我有两个分支,一个localremote

local是孤立开发的,remote稍后被提取 现在我想合并它们,但它们没有合并基础(没有共同的祖先)。有没有办法我可以手动'创建一个合并基地?如果是这样,怎么样?

2 个答案:

答案 0 :(得分:1)

  

有没有办法可以手动'创建合并基础?

是的,你可以。
您可以使用提交范围cherry-pick ..从一个分支到另一个分支的所有提交。

git cherry-pick <first commit>..<last-commtit>

Git会通知您这两个分支机构没有关系。 enter image description here

这里我们将使用cherry-pick以便将历史记录合并,您可以看到新分支也包含孤儿分支的历史记录。

enter image description here

答案 1 :(得分:1)

简短的回答是“不,但你不需要”。旧版本的Git允许git merge在不相关的历史上。这通常是一个错误而不是预期的行为,因此最新版本的Git现在默认拒绝它。但是,如果是一个错误,只需在命令中添加--allow-unrelated-histories,Git将按照以前的方式运行。