Git 仍然时不时让我感到困惑!
我有一个分期和一个主分支。通常开发发生在 staging 分支上,它会定期合并到 master 中。
然而,一些提交已直接提交到主分支。这意味着暂存分支中缺少更新。
如何让我的登台分支与主服务器保持同步?我是否认为合并应该总是在一个方向发生(即分期>主),而合并主>分期不是要走的路?
Git 仍然时不时让我感到困惑!
我有一个分期和一个主分支。通常开发发生在 staging 分支上,它会定期合并到 master 中。
然而,一些提交已直接提交到主分支。这意味着暂存分支中缺少更新。
如何让我的登台分支与主服务器保持同步?我是否认为合并应该总是在一个方向发生(即分期>主),而合并主>分期不是要走的路?
我认为时不时地融入其中是一个完全合理的master
过程staging
。这带来staging
了最新的 master 补丁。
之后您可以继续开发staging
,偶尔通过合并再次更新它。
当staging
达到稳定状态时,将其合并到master
.
分支之间的合并不必是单向的,也不必是一次性的。
(当然,以上不是唯一可能的分支策略。有关更高级模型的示例,请参见this)
在某些情况下,我通常使用git rebase
对 master 所做的更改或合并到 master 来使我的分支保持最新。
通用工作流程:
是的。虽然从技术上讲,merge 可以朝任一方向发展,但如果将 master 合并到一个功能分支中,它就不再是一个功能分支,而只是一个带有功能元素的随机东西的转储。仅当最终合并是壁球时才这样做。
如果您打算以正常方式重新合并,您的主要计划是快速。忽略主,并在最终合并时解决差异。只需要单独处理你的分支。
如果您不能快速前进,最好不时将您的分支重新设置在 master 之上。(确保每个提交仍然正常工作!)一个中途的解决方案是合并一些部分并仅重新设置其余部分。
另一个实用的替代方案是挑选一些真正必备的补丁。