我们有一个标准Web项目并为此项目维护3个核心分支:Master,Beta和Develop。以下是我们使用的流程/工作流程摘要:将Git Feature分支合并到“Beta”分支(已合并到“Develop”分支后)问题
(1)请求新功能/更新,以便我们创建新功能分支。
(2)为新的Feature分支提交提交,并将Feature分支合并到'Develop'分支;然后将'Develop'分支发布到测试环境进行测试。 (3)一旦新功能被测试/批准,新的拉取请求将在同一个功能分支中进行;这个新的pull请求将被合并到'Beta'分支中。 'Beta'分支具有我们所有的“随时可用”功能:事实上,我们直接将“Beta”分支发布到生产环境,当准备就绪时,我们立即将“测试版” '分支到'主'分支......通过这样做,'主'分支始终是生产环境中代码的副本。
问题:在上面的第3步中,当我们试图将新的Feature分支合并到'Beta'分支时,该请求包含所有已经合并到'Develop'分支中的新提交。
示例:5个特征分支单独合并到'Develop'分支(分支标记为1,2,3,4和5)。所有5个都经过了测试,但是前4个有bug。所以分支“5”被批准,我们试图为该Feature分支创建一个拉取请求,并将它合并到'Beta'....但是当我们这样做时,该拉请求包括全部5个特征分支....不仅仅是分支“5”的提交。
我们必须做错了!我们可以做些什么来解决我们的流程/工作流程?
的可能的复制[待办事项Git的合并影响 “合并” 分支?](http://stackoverflow.com/questions/40466290/do-git-merges-affect-the-merged-branch) –
哪个分支你测试了吗?不同的功能彼此干扰的频率如何? – oyvind
我问的原因是因为它看起来像只在一个分支上进行测试(开发),但是您仍然能够独立地测试/批准更改。所以我猜猜这些功能通常不会相交。 – oyvind