编程进阶网 编程进阶网
首页
  • 在线工具
  • JSON工具
  • 文本工具
  • 图片处理
  • 文档转化
  • 代码压缩
  • 加解密
  • 时间日期
  • 网络工具
  • 颜色设计
  • 二维码
  • 开发实用
  • 计算机的原理
  • 操作系统原理
  • 网络协议原理
  • 数据库的原理
  • 序卷导读
  • 数据本质
  • 运行模型
  • 并发设计
  • 内存真相
  • 交互系统
  • 面向对象
  • 设计原则
  • 设计模式
  • 系统架构
  • 技能之旅
  • 体系建设
  • 代码品质
  • 方案设计
  • 稳定可靠
  • 工程运维
  • 性能优化
  • 数据结构导论
  • 线性结构详解
  • 树哈希结构论
  • 容器设计实战
  • 经典算法思想
  • 工程案例剖析
  • 算法题库精练
  • C语言入门
  • C综合案例
  • C专栏博客
  • C标准集库
  • C++入门教程
  • C++综合案例
  • C++专栏博客
  • C++编程技巧
  • Java入门教程
  • Java综合案例
  • Java专栏博客
  • Go入门教程
  • Go综合案例
  • Go专栏博客
  • Go开发技巧
  • JavaScript入门
  • JavaScript案例
  • JavaScript高级
  • Kotlin精通
  • Android库解读
  • Android专栏
  • iOS ObjC入门
  • iOS Swift入门
  • iOS入门精通
  • Web之Html手册
  • Web之TypeScript
  • Web之Vue高级进阶
  • Linux之QML入门
  • Linux之QT核心库
  • Python教程
  • Shell&Bash教程
  • 工具脚本
  • 自动化脚本
  • 质量保障
  • 产品思考
  • 软实力
  • 开发流程
  • Git应用
  • 技术模版
  • 技术规范
  • Markdown
  • Mermaid
  • 开源协议
  • 毛选解读
  • 自我精进
  • 关于我
  • 自我精进
  • 职场管理
  • 职场面试
  • 心情杂货
  • 友情链接

杨充

专注编程 · 终身学习者
首页
  • 在线工具
  • JSON工具
  • 文本工具
  • 图片处理
  • 文档转化
  • 代码压缩
  • 加解密
  • 时间日期
  • 网络工具
  • 颜色设计
  • 二维码
  • 开发实用
  • 计算机的原理
  • 操作系统原理
  • 网络协议原理
  • 数据库的原理
  • 序卷导读
  • 数据本质
  • 运行模型
  • 并发设计
  • 内存真相
  • 交互系统
  • 面向对象
  • 设计原则
  • 设计模式
  • 系统架构
  • 技能之旅
  • 体系建设
  • 代码品质
  • 方案设计
  • 稳定可靠
  • 工程运维
  • 性能优化
  • 数据结构导论
  • 线性结构详解
  • 树哈希结构论
  • 容器设计实战
  • 经典算法思想
  • 工程案例剖析
  • 算法题库精练
  • C语言入门
  • C综合案例
  • C专栏博客
  • C标准集库
  • C++入门教程
  • C++综合案例
  • C++专栏博客
  • C++编程技巧
  • Java入门教程
  • Java综合案例
  • Java专栏博客
  • Go入门教程
  • Go综合案例
  • Go专栏博客
  • Go开发技巧
  • JavaScript入门
  • JavaScript案例
  • JavaScript高级
  • Kotlin精通
  • Android库解读
  • Android专栏
  • iOS ObjC入门
  • iOS Swift入门
  • iOS入门精通
  • Web之Html手册
  • Web之TypeScript
  • Web之Vue高级进阶
  • Linux之QML入门
  • Linux之QT核心库
  • Python教程
  • Shell&Bash教程
  • 工具脚本
  • 自动化脚本
  • 质量保障
  • 产品思考
  • 软实力
  • 开发流程
  • Git应用
  • 技术模版
  • 技术规范
  • Markdown
  • Mermaid
  • 开源协议
  • 毛选解读
  • 自我精进
  • 关于我
  • 自我精进
  • 职场管理
  • 职场面试
  • 心情杂货
  • 友情链接
  • README
  • 业务思考

  • 产品思考

  • 软实力

  • 开发流程

  • Git应用

  • 技术模版

  • 技术规范

  • markdown

  • mermaid

    • Mermaid 图表完全指南
    • Mermaid基础入门完全指南
    • Mermaid流程图之完全指南
    • Mermaid时序图之完全指南
    • Mermaid类图与ER图完全指南
    • Mermaid状态图Git图完全指南
      • 一、状态图(State Diagram)
        • 1.1 基础语法
        • 1.2 带转换描述
      • 二、复合状态(Composite State)
      • 三、并发状态(Concurrent State)
      • 四、分支(Fork/Join)
      • 五、实战:Git 提交状态流转
      • 六、Git 图(gitGraph)
        • 6.1 基础语法
        • 6.2 标签与反向合并
        • 6.3 实战:Git Flow 可视化
      • 七、速查
    • Mermaid甘特图与饼图指南
    • Mermaid其他图表合集指南
    • Mermaid综合实战完全指南
  • license

  • 博客部署

  • 技术招聘

  • 八股文

  • 技术
  • mermaid
杨充
2021-11-20
目录

Mermaid状态图Git图完全指南

# Mermaid状态图Git图完全指南

# 一、状态图(State Diagram)

状态图描述一个对象从创建到销毁经历的所有状态,以及触发状态转换的事件。最适合画订单状态、工作流、审批流。

# 1.1 基础语法

stateDiagram-v2
    [*] --> 待支付
    待支付 --> 已支付 : 用户付款
    已支付 --> 已发货 : 商家发货
    已发货 --> 已完成 : 用户签收
    已完成 --> [*]
    待支付 --> 已取消 : 超时/取消
    已取消 --> [*]
[*]                  起点或终点
状态名 --> 状态名     状态转换
: 说明文字             转换标签

# 1.2 带转换描述

stateDiagram-v2
    [*] --> Draft
    Draft --> Review : submit
    Review --> Draft : reject
    Review --> Published : approve
    Published --> Archived : archive
    Published --> Draft : unpublish
    Draft --> [*] : delete

# 二、复合状态(Composite State)

一个状态内部可以包含子状态:

stateDiagram-v2
    [*] --> 空闲
    
    state 工作中 {
        [*] --> 编码
        编码 --> 自测
        自测 --> 评审
        评审 --> 编码 : 修改
        评审 --> [*]
    }
    
    空闲 --> 工作中 : 接到任务
    工作中 --> 空闲 : 任务完成
    空闲 --> [*]

# 三、并发状态(Concurrent State)

stateDiagram-v2
    [*] --> Active
    
    state Active {
        [*] --> NumLockOff
        NumLockOff --> NumLockOn
        NumLockOn --> NumLockOff
        --
        [*] --> CapsLockOff
        CapsLockOff --> CapsLockOn
        CapsLockOn --> CapsLockOff
        --
        [*] --> ScrollLockOff
        ScrollLockOff --> ScrollLockOn
        ScrollLockOn --> ScrollLockOff
    }
--     分隔并发子状态

# 四、分支(Fork/Join)

stateDiagram-v2
    state 订单处理 {
        [*] --> 校验
        校验 --> 风控检查
        校验 --> 库存检查
        风控检查 --> 合并
        库存检查 --> 合并
        合并 --> [*]
    }

# 五、实战:Git 提交状态流转

stateDiagram-v2
    [*] --> 工作区修改
    工作区修改 --> 暂存区 : git add
    暂存区 --> 本地仓库 : git commit
    本地仓库 --> 远程仓库 : git push
    工作区修改 --> 工作区修改 : git restore
    暂存区 --> 工作区修改 : git restore --staged
    本地仓库 --> 暂存区 : git reset --soft
    本地仓库 --> 工作区修改 : git reset --mixed
    本地仓库 --> 已删除 : git reset --hard
    已删除 --> [*]
    远程仓库 --> 本地仓库 : git revert

# 六、Git 图(gitGraph)

Git 图直接用 Mermaid 画出分支结构和提交历史,最适合讲解 Git 工作流。

# 6.1 基础语法

gitGraph
    commit
    commit
    branch develop
    checkout develop
    commit
    commit
    checkout main
    merge develop
    commit
gitGraph           声明 Git 图
commit             在当前分支提交
commit id: "hash"  指定 commit id
branch name        创建分支
checkout name      切换分支
merge name         合并分支

# 6.2 标签与反向合并

gitGraph
    commit id: "init"
    commit id: "基础功能"
    branch feature/login
    checkout feature/login
    commit id: "登录功能"
    commit id: "登录测试"
    checkout main
    branch hotfix/crash
    checkout hotfix/crash
    commit id: "修复崩溃" tag: "v1.0.1"
    checkout main
    merge hotfix/crash
    checkout feature/login
    merge main
    commit id: "适配修复"
    checkout main
    merge feature/login tag: "v1.1.0"

# 6.3 实战:Git Flow 可视化

gitGraph
    commit id: "v1.0"
    branch develop
    checkout develop
    commit id: "项目初始化"
    branch feature/商品搜索
    checkout feature/商品搜索
    commit id: "搜索功能"
    commit id: "搜索优化"
    checkout develop
    merge feature/商品搜索
    branch feature/购物车
    checkout feature/购物车
    commit id: "购物车功能"
    commit id: "购物车修复"
    checkout develop
    merge feature/购物车
    branch release/v1.1
    checkout release/v1.1
    commit id: "版本号" tag: "v1.1.0"
    checkout main
    merge release/v1.1
    checkout develop
    merge release/v1.1
    checkout main
    branch hotfix/支付异常
    checkout hotfix/支付异常
    commit id: "修复支付" tag: "v1.1.1"
    checkout main
    merge hotfix/支付异常
    checkout develop
    merge hotfix/支付异常

# 七、速查

┌──────────────────────────────────────────────┐
│           Mermaid 状态图 & Git图速查          │
├──────────────────────────────────────────────┤
│ 状态图                                        │
│ [*]           起点/终点                       │
│ state 名 {}   复合状态                        │
│ --            并发分隔                        │
│ : 文字         转换标签                        │
│                                              │
│ Git图                                         │
│ commit        在当前分支提交                  │
│ commit tag:"" 提交并打标签                    │
│ branch name   创建分支                        │
│ checkout name 切换分支                        │
│ merge name    合并分支                        │
└──────────────────────────────────────────────┘

🏃 下一篇:甘特图与饼图 (opens new window)——项目排期、任务管理、数据占比可视化。

#Mermaid#状态图#Git
上次更新: 2026/07/14, 11:06:55
Mermaid类图与ER图完全指南
Mermaid甘特图与饼图指南

← Mermaid类图与ER图完全指南 Mermaid甘特图与饼图指南→

最近更新
01
audit
07-27
02
C++入门教程全章思考题汇编
07-24
03
12.技术团队建设能力
07-21
更多文章>
Theme by Vdoing | Copyright © 2019-2026 杨充 | MIT License | 鄂ICP备2024073355号-1 | 鄂ICP备2024073355号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式