将父分支合并到子分支中

25

我正在使用Bitbucket和Sourcetree,我的操作如下:

我有一个develop分支,从这个分支创建了一个feature分支。

在创建完feature分支后,我在develop分支上修复了一些错误并将其推送到该分支上。

现在要怎样让feature分支也获得这些修复呢?我认为需要将develop分支合并到feature分支中,但我不确定,因为我对Git还比较陌生,我不想做出任何导致丢失develop分支的错误操作。不过现在我希望将这些修复应用到我的feature分支上。

请问我该怎么做呢?

2个回答

27

您想将开发分支的更改合并到特性分支。因此,首先切换到特性分支,然后将开发分支合并到其中。如果您还想使用来自开发分支的提交,请使用非快进式合并--no-ff方法。否则,请不要使用--no-ff

git checkout feature
git merge --no-ff develop

当您将develop分支合并到feature分支时,请放心,develop分支将保持不变。您可能会在feature分支中遇到合并冲突,但可以按照此链接上的步骤轻松解决:http://softwarecave.org/2014/03/03/git-how-to-resolve-merge-conflicts/


@Aditya 如果我的功能分支也有一些提交或更改。我想在此合并后将这些更改放在顶部。它们还会存在吗,还是会被删除? - Umair
@Umair 看起来你应该检查一下 git rebase,因为你想要把你的更改放在最上面。 - Aditya Kadakia

8
可以合并,或者更好的方式是将develop分支rebase到你的feature分支。
git checkout feature
git rebase develop

如果出现合并错误,您可以通过跳过变基来解决。
git rebase --skip

或解决冲突并继续(在添加您的解决方案后)。
git rebase --continue

也可以参考这个问题

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接