zoukankan      html  css  js  c++  java
  • Git flow 使用实践

    单个分支的功能一定要纯净,对于多个功能混在一个分支上的情况,将拒绝合并

    Commit Message 规范(Angular 社区提交规范)

    • feature:feat: ${新功能描述}
    • fix:fix: ${修复事项描述}
    • docs:doc: 更新文档
    • refactor:refactor: ${重构描述}
    • update version:chore(package): bump version to ${版本号}

    分支命名规范

    • feature:feature/${功能描述,多个单词用中划线 “-” 分隔}
    • hotfix:hotfix/${修复事项,多个单词用中划线 “-” 分隔}
    • refactor:refactor/${重构事项,多个单词用中划线 “-” 分隔}
    • chore: chore/${其他不便分类的杂项修改}

    分支流程

    特性分支开发流程

    plantUML 在线做图网址 http://www.plantuml.com/plantuml/uml/SyfFKj2rKt3CoKnELR1Io4ZDoSa70000

    @startuml
    
    autonumber
    hide footbox
    title **特性分支 PR 流程**
    
    participant "Develop
    开发分支" as dev
    participant "feature/main
    特性分支" as f0
    note over of f0
    一次业务或功能迭代为一个
    特性分支,严禁多个特性混杂
    end note
    participant "feature/main-sub
    特性子分支" as f01
    note right of f01
    子分支用于实现特性分支下的某个功能模块,
    保证单次 CR 的代码量可控
    end note
    
    == 少量代码更改 ==
    dev o->o f0: 从 develop 检出特性分支
    activate f0
    f0 ->o f0: 特性开发
    f0 ->o dev: 提 MR,走 CR 流程
    deactivate f0
    
    ...
    
    == 特性分支代码量较大,不符合单次 CR,进行子分支拆分 ==
    autonumber 1
    dev o->o f0: 从 develop 检出特性分支
    activate f0
    f0 ->o f01: 从特性分支检出子分支
    note right: 命名规范"特性分支名-子分支名"
    activate f01
    f01 ->o f01: 特性开发
    f01 ->o f0: 提 MR,走 CR 流程
    deactivate f01
    f0 o->o dev: 提 MR,走快速 CR 流程
    deactivate f0
    
    
    @enduml
    

    hotfix

    @startuml
    
    hide footbox
    title **Hotfix 合并流程**
    
    participant "master" as master
    participant "hotfix" as hotfix
    participant "develop" as dev
    
    
    == 热修复流程 ==
    autonumber
    master o->o hotfix: 从 master 检出分支
    activate hotfix
    hotfix ->o hotfix: Bug 修复
    hotfix ->o master: 提 MR,走 CR 流程
    deactivate hotfix
    
    ...
    
    == 仓库管理员收尾工作 ==
    dev o->o master: develop 分支 rebase master 分支,同步热修复更改
    
    @enduml
    
  • 相关阅读:
    Android之旅 刷机 前言
    流程管理的售前意识
    站在企业角度来审视K2
    Android之旅 ROM定制 美化 默认屏的下方操作菜单
    在非K2服务器上部署基于K2的Web Application
    java拦截器与过滤器(转载)
    windows安装rediscluster集群
    SpringBoot使用Nacos配置中心(转载,可用)
    SpringBoot+Dubbo+MybatisPlus整合Seata分布式事务踩坑集合
    转载RabbitMQ教程
  • 原文地址:https://www.cnblogs.com/everlose/p/12825891.html
Copyright © 2011-2022 走看看