我正在寻找关于git分支/发布策略的指导,这似乎与我迄今为止找到的任何策略都不一样。
我们正在使用VSTS,并且目前有一个主分支,每个更改都有功能分支。提交PR以审查功能分支,如果批准,则自动合并到主服务器。这会自动触发DEV环境的释放。假设一切都成功,则手动触发发布(通过批准)。
我遇到的问题是,我们可以让多个团队成员在任何给定的时间点处理各种功能。这意味着多次合并到master中,并向DEV发布相应的版本。一切正常。然而,当有人想要在其他人的更改准备就绪之前将其更改移至生产时,就会出现问题。在我们当前的场景中,执行发布到生产将从发布时存在的主分支到DEV。“/ p>
这可能看起来非常错误,但我们的Git repo并不真正包含代码 - 更多地将其视为配置。将配置更改单独转移到生产中是完全可以接受的。
我已经考虑过有多个分支和挑选提交,但感觉过于复杂。
我希望我错过了一些非常明显的东西。
答案 0 :(得分:0)
我怀疑你已经知道了,但是
这可能看起来非常错误,但我们的Git repo并不真正包含代码 - 更多地将其视为配置。将配置更改单独转移到生产中是完全可以接受的。
与你的陈述发生冲突:
然而,当有人想要在其他人的更改准备好之前将他们的更改转移到生产中时会出现问题
如果您的更改可能处于未准备好的状态,则根据定义,您需要一些方法来单独进行更改。我过去在这里使用了几种不同的策略,所有这些策略都围绕着这样的想法,即合并到main并从生产到生产从根本上说应该是一个原子操作:
答案 1 :(得分:0)
我将建议gitflow如下:
develop
分支develop
分支。然后将触发发布以部署到DEV环境。develop
分支合并到master
分支进行生产。您还可以参考A successful Git branching model了解更详细的分支模型。