V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ryougifujino
V2EX  ›  分享发现

一篇常看常新的版本控制工作流文章

  •  
  •   ryougifujino · 100 天前 · 939 次点击
    这是一个创建于 100 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://martinfowler.com/articles/branching-patterns.html

    可能是我目前看过的关于版本控制工作流最好的一篇文章了,很全也很细。前前后后读了好多遍,感觉每次都有新收获。

    下面是我的以下感想:

    • 开源项目的 flow 和商业项目的完全是两回事,前者适合功能分支模式,后者最好的是持续集成。但很多时候对开源的货物崇拜导致了很多商业项目也去附和开源项目的 flow 。
    • 集成频率和测试代码是持续集成的关键,前者通过频率来减少合并的痛苦(冲突),后者保证了主线的健康性。功能分支在持续集成里反而是可有可无的东西。
    • 功能分支模式是穷人的模块化架构,不是构建在运行时/部署时能够轻松开启和关闭功能的系统( Keystone Interface 、Feature Flags ),而是它们将自己与源码控制耦合,通过手动合并来提供这种机制。
    • 我感觉很多人其实根本就没有做到持续集成,他们只是用了持续集成工具。
    • 分支并不是越多越好,而且正好相反。
    • 集成前 Code Review 在商业项目中并不是必要的,相反它还会引起集成摩擦,降低集成频率。一个配合的很好的团队甚至可以放弃它。
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   881 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 20:06 · PVG 04:06 · LAX 12:06 · JFK 15:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.