下面的 Git 分支模型似乎很普遍。 http://nvie.com/posts/a-successful-git-branching-model/
在我们当前的项目中,我们没有开发分支,并从 master 创建功能/错误修复分支并将它们合并回来并标记所有相关里程碑(完成功能/错误修复/发布)。
所以我想知道,拥有一个开发分支有什么好处?
下面的 Git 分支模型似乎很普遍。 http://nvie.com/posts/a-successful-git-branching-model/
在我们当前的项目中,我们没有开发分支,并从 master 创建功能/错误修复分支并将它们合并回来并标记所有相关里程碑(完成功能/错误修复/发布)。
所以我想知道,拥有一个开发分支有什么好处?
我的理解是开发分支是为了保持主分支的清洁。换句话说,主分支应该只包含可发布的代码。
我有很多客户也做过像你这样的事情。在您的世界中,您可能不需要开发分支。我认为您使用 master 就像一个开发分支,这对您来说似乎很好。
然而,有些组织有很高的仪式,一切都需要辩论和批准。在这些地方,开发分支可以作为所有工作代码在被拆分为发布分支并最终掌握之前聚集在一起的地方。在您显示的图表中,功能分支是代码在工作之前所在的位置。一旦适合与行为良好的代码相关联,开发分支就是它所在的地方。从那里开始,在某个时刻,来自开发的快照提供给发布分支,发布分支可能会保持活跃数周或数月,而人们对 QA 周期、最终功能集等感到犹豫不决。最终发布分支被提升为主分支,代表生产每时每刻。
但是,由于您当前的设置适合您,也许这就是您所需要的。它肯定会让世界变得不那么混乱。