Git将分支合并为主

如果你有一个分支,你把它从主控中分离出来,然后开发出你的功能......当谈到融入主控时,我听到了两种不同的方法:

  • 首先将主合并到特征分支中,然后将分支合并回主。
  • 将你的分支合并为主。
  • 任何人都可以告诉我哪种方法更好,如果第一种方法有实际益处?

    或者如果有更好的方法?


    假设你从master创建feature-sev,同时我创建了feature-eric。 我的分支修改了与您的文件相同的文件; 实际上,它恰好以我们的git客户端不够聪明的方式重叠。 我先完成开发并合并我的更改。

    在这种情况下,你不可避免地会被提示解决冲突。

    CONFLICT (content): Merge conflict in stackoverflow.html
    Automatic merge failed; fix conflicts and then commit the result.
    

    如果与(1)一起使用,将主合并到分支并确保一切看起来不错,您将通过feature-sev中的合并提交来解决冲突。 如果您在解决过程中犯了错误,您可以将它们回滚,而无需对主人进行任何直接修改。 这很好。

    如果你使用(2),你将通过直接向master发送的合并提交来解决冲突。 如果你犯了什么错误,你会打破主人。 这不好。


    我想这取决于;-)

    有些事情要考虑:

  • 合并后您是否需要功能分支? 如果是这样,将master合并到master合并可能会很有用。 如果不是,如果您要删除它,合并到功能分支没有太大的意义。
  • 你可以打破master分支的本地工作副本吗? 如果不是,则应避免将代码合并到master ,这可能会导致需要手动解决的大量冲突。 如果没关系,继续。
  • 一般来说,我认为这取决于你如何使用git。

    由于我通常只是暂时使用功能分支,并且在成功完成功能并将它们合并到master后删除它们,我通常会直接合并到master然后删除其他分支。

    另一方面,我可以想象,可能会出现相反的情况。 但只要没有强烈的理由,我会尽量避免它。 一个合并就足够了;-)。


    理论上,没有区别。 您在一个分支中有一组更改,您将与另一个分支中的一组更改相结合。 这些变化最终在何处并不重要。

    在实践中,最好将更改合并到功能分支中,因为它为您提供了解决冲突的独立位置。 如果功能分支长时间处于开发阶段,这一点尤其重要,因为在第一次提交之后会经常发生微妙的冲突。

    最好的方法是定期更新从主人到功能分支,减少功能开发结束时发生冲突的可能性。

    链接地址: http://www.djcxy.com/p/68179.html

    上一篇: Git Merging Branch Into Master

    下一篇: Form validation ignores empty value