Git还时不时地困扰我!
我有一个升级和一个主分支。通常在staging分支上进行开发,该分支会定期合并到master中。
但是有些提交已直接提交给主分支。这意味着暂存分支中缺少更新。
如何让我的登台分支与主人一起更新?我是否正确认为合并应始终在一个方向上发生(即分段>主)和合并主>分期不是要走的路吗?
答案 0 :(得分:13)
我认为将master
偶尔合并到staging
是一个非常合理的过程。这使staging
与master中的最新补丁保持同步。
您可以在此之后继续开发staging
,偶尔通过合并再次更新它。
当staging
达到稳定状态时,您将其合并到master
。
分支之间的合并不一定是单向的,也不一定是一次性的交易。
(以上当然不是唯一的可能的分支策略。请参阅this for an example of a more advanced model)
答案 1 :(得分:0)
在某些情况下,我通常会使用git rebase
让我的分支机构了解对主服务器所做的更改和/或合并到主服务器中的更新。
常见工作流程:
答案 2 :(得分:-1)
是。虽然合并可以在技术上向任何一个方向发展,但如果将master合并到featire分支中,它就不再是一个功能分支,而只是一个包含功能元素的随机内容的转储。只有在最后的合并将是一个壁球时才这样做。
如果您计划以正常方式合并,那么您的主要计划是快速的。忽略主服务器,并在最终合并时解决差异。只是单独选择你的分支。
如果你不能快速行动,最好在主人的时间之外更好地重新分配你的分支。 (确保每个提交仍然可以正常工作!)中途解决方案是将某些部分合并,然后仅重新设置其余部分。
另一个实用的替代方案就是挑选一些真正必备的补丁。