我正在与客户会面,他们描述了他们如何使用SVN将代码从开发用于测试到生产。我听到的确困扰着我,从那时起我一直在思考它。
我无法简单解释为什么我认为这是错的 - 也许你可以帮忙?
我的目标是提供一些客观的事实或措施来说服客户改变更多的东西,好吧,正常。如果我错了,这是一个很好的方式,那么我也想知道。
这是过程:
此客户不使用CI / CD工具。他们只使用这种增量方法进行部署。
答案 0 :(得分:-1)
促销模型的问题在于它们会产生复杂性,但这种复杂性并不会给流程添加任何内容。分支的目的是允许多个开发流。在促销模型中,只有一个开发流,但现在涉及三个分支。有人必须从一个蒸汽合并到另一个蒸汽。 QA和Production都必须等待有人进行促销。
更糟糕的是,没有100%确定开发所开发的是QA正在测试的,以及QA测试和批准的是什么正在投入生产。毕竟,质量保证和生产正在使用两个独立的构建。
让我们稍微简化一下:两个分支,一个 dev 分支和一个 test 分支:
如果我们没有多个分支会怎么样?
相同的过程,除非没有所有的分支伏都教。没有人必须记住从一个分支到另一个分支。没有人必须验证一个分支是否与另一个分支相同。
更重要的是,开发人员在第90版中构建的软件与QA正在测试的软件相同。无需重建软件,希望它是一样的。当QA决定特定版本可用于生产时,QA测试的相同软件将被提升。无需进行特殊构建,希望与QA测试相同。
可以这样想,只有一个开发流。开发正在开发该开发流的一角。 QA在测试早期版本时落后于时间。使用更旧的版本,生产甚至可以追溯到更晚。
最后,所有促销分支都会增加您的开发复杂性,而不会增加任何好处。生活和发展足够复杂。没有理由让任何一个更难。