分享

为什么版本控制中的分支管理不适合DevOps?

 东北十三少 2023-09-26 发布于四川

代码的分支管理,是软件开发过程中常见的一种被各种版本控制工具支持的一种版本管理方法,它能够为敏捷、持续集成提供良好底层支持,能够有效降低代码沟通成本、提升代码生产质量。

但是,分支管理并不适合DevOps。因为DevOps的核心是持续集成、持续交付和精益方法,而分支管理与这些核心是相违背的:

  • 分支会产生浪费,不符合精益原则。因为只要有分支产生,伴随而来的就会有“额外”的任务——合并。这本身就是一种浪费,况且,合并过程中还会因为常常出现的冲突而带来更大的浪费。

  • 分支管理也不符合持续集成的原则。持续集成要求代码需要一直处于可执行(可发布)的状态,而分支合并无疑会给持续集成带来阻碍。由于合并冲突的原因,这将使得每日集成、持续集成难以实现。

  • 分支管理会导致代码不再具有整体性,因为分支代码在被合并入主干之前通常是被冻结的。

  • 分支管理也会使重构变得困难。在分支合并之前的重构可能会因合并之后的变化失去了意义。

  • 分支管理可能出现的合并冲突问题无法通过自动化合并工具完美解决,如语义冲突。

总之,由于DevOps包含持续集成、持续交付和精益方法,这意味着分支管理与DevOps的理念是对立的。所以,分支管理不适合DevOps。

对于DevOps来说,版本控制的最佳方式是不使用分支,而使用完善的持续集成和高度自动化的部署流水线来实现可靠的持续交付。

这正是:

开发维护最敏捷,分支管理不适合
基本理念相对立,持续精益才可以

参考书目:DevOps 最佳实践,作者:Bart de Best,出版社:电子工业出版社

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多