Skip to content

交互式菜单

交互式菜单是 Git Workflow 的核心界面,提供了直观、易用的操作方式,特别适合新手快速上手。

🎯 启动主菜单

基本用法

bash
gw

直接运行 gw 命令即可启动交互式主菜单。

主菜单界面

 ███████╗     ██╗███████╗██╗  ██╗
 ╚══███╔╝     ██║██╔════╝╚██╗██╔╝
   ███╔╝      ██║█████╗   ╚███╔╝
  ███╔╝  ██   ██║██╔══╝   ██╔██╗
 ███████╗╚█████╔╝███████╗██╔╝ ██╗
 ╚══════╝ ╚════╝ ╚══════╝╚═╝  ╚═╝

  git-workflow v0.2.24

? 选择操作:
  [1] ✨ 创建 feature 分支      gw f
  [2] 🐛 创建 hotfix 分支       gw h
  [3] 🗑️  删除分支               gw d
  [4] 📝 提交代码               gw c
  [5] 🏷️  创建 tag               gw t
  [6] 🗑️  删除 tag               gw td
  [7] ✏️  修改 tag               gw tu
  [8] 📋 列出 tags              gw ts
  [9] 📦 发布版本               gw r
  [a] 💾 管理 stash             gw s
  [b] ⚙️  初始化配置             gw init
  [0] ❓ 帮助
  [q] 退出

🎨 界面特性

主菜单顶部显示精美的 ASCII Art Logo:

  • 使用绿色高亮显示
  • 展示项目品牌标识
  • 包含版本号信息

功能分类

菜单项按功能类型进行分组:

分支管理

  • [1] 创建 feature 分支 - 日常功能开发
  • [2] 创建 hotfix 分支 - 紧急问题修复
  • [3] 删除分支 - 清理无用分支

代码管理

  • [4] 提交代码 - AI 智能提交或手动提交
  • [a] 管理 stash - 可视化 stash 管理

版本管理

  • [5] 创建 tag - 创建版本标签
  • [6] 删除 tag - 删除版本标签
  • [7] 修改 tag - 修改标签信息
  • [8] 列出 tags - 查看所有标签
  • [9] 发布版本 - 更新 package.json 版本

工具管理

  • [b] 初始化配置 - 创建配置文件
  • [0] 帮助 - 查看帮助信息
  • [q] 退出 - 退出程序

快捷键设计

每个功能都有对应的快捷键:

  • 数字键 - 主要功能(1-9)
  • 字母键 - 辅助功能(a, b)
  • 特殊键 - 系统功能(0, q)

命令提示

每个菜单项都显示对应的命令行快捷方式:

[1] ✨ 创建 feature 分支      gw f
  • 左侧:快捷键和功能描述
  • 右侧:对应的命令行命令

⌨️ 操作方式

键盘操作

按键功能
数字键 1-9选择对应的主要功能
字母键 a-z选择对应的辅助功能
方向键 ↑↓上下移动选择
回车键确认选择
q 键退出程序
Ctrl+C优雅退出

选择方式

直接按键选择(推荐)

bash
gw
# 直接按数字键 1,立即执行创建 feature 分支
# 直接按字母键 a,立即执行管理 stash

方向键选择

bash
gw
# 使用 ↑↓ 方向键移动光标
# 按回车键确认选择

退出方式

  • q 键 - 正常退出
  • Ctrl+C - 强制退出(优雅处理)
  • 选择退出选项 - 通过菜单选择退出

🔄 自动更新检查

版本检查

主菜单启动时会自动检查更新:

bash
gw
# 检查更新中...
# 
# 🎉 发现新版本!
# 当前版本: v0.2.24
# 最新版本: v0.2.25
# 
# 是否现在更新? (y/N)

更新提示

  • 非阻塞检查 - 不影响正常使用
  • 智能提醒 - 只在有新版本时提示
  • 可选更新 - 用户可以选择是否更新

🎯 使用场景

场景一:新手入门

bash
# 第一次使用,不熟悉命令
gw

# 通过菜单了解所有功能
# 选择需要的操作
# 跟随交互式引导完成操作

场景二:功能探索

bash
# 想了解工具的所有功能
gw

# 浏览完整的功能列表
# 尝试不同的功能
# 学习对应的命令行快捷方式

场景三:偶尔使用

bash
# 不经常使用,忘记了具体命令
gw

# 通过菜单快速找到需要的功能
# 无需记忆复杂的命令参数

场景四:团队演示

bash
# 向团队成员演示工具功能
gw

# 清晰的界面展示所有功能
# 直观的操作流程
# 专业的视觉效果

🔧 自定义配置

禁用更新检查

如果不希望在交互式模式下检查更新:

json
{
  "checkUpdates": false
}

自定义启动消息

json
{
  "welcomeMessage": "欢迎使用 Git Workflow!"
}

菜单项自定义

json
{
  "menuItems": {
    "feature": {
      "enabled": true,
      "label": "创建功能分支",
      "shortcut": "f"
    },
    "hotfix": {
      "enabled": true,
      "label": "创建修复分支",
      "shortcut": "h"
    }
  }
}

🎨 主题和样式

颜色方案

主菜单使用统一的颜色方案:

  • 绿色 - Logo 和成功信息
  • 黄色 - 版本号和重要提示
  • 蓝色 - 命令和链接
  • 灰色 - 辅助信息
  • 白色 - 主要文本

图标系统

每个功能都有对应的 emoji 图标:

  • feature - 新功能,闪亮的星星
  • 🐛 hotfix - Bug 修复,小虫子
  • 🗑️ delete - 删除操作,垃圾桶
  • 📝 commit - 提交代码,备忘录
  • 🏷️ tag - 版本标签,标签
  • 📦 release - 版本发布,包裹
  • 💾 stash - 代码暂存,软盘
  • ⚙️ config - 配置管理,齿轮

响应式布局

主菜单会根据终端宽度自动调整:

  • 宽屏 - 显示完整的 Logo 和描述
  • 窄屏 - 简化显示,保持可读性
  • 最小宽度 - 确保基本功能可用

🚀 性能优化

快速启动

  • 延迟加载 - 只在需要时加载功能模块
  • 缓存机制 - 缓存常用信息
  • 异步检查 - 更新检查不阻塞界面

内存优化

  • 按需加载 - 避免加载不必要的模块
  • 及时清理 - 操作完成后清理资源
  • 轻量依赖 - 使用轻量级的依赖库

🔍 调试和故障排除

调试模式

启用详细日志:

bash
DEBUG=gw:menu gw

常见问题

问题一:菜单显示异常

bash
# 终端不支持 Unicode 字符
# 解决方案:使用支持 Unicode 的终端

问题二:颜色显示异常

bash
# 终端不支持颜色
# 解决方案:使用支持 ANSI 颜色的终端

问题三:按键无响应

bash
# 终端输入模式问题
# 解决方案:重新启动终端或使用方向键选择

📚 相关功能

命令行模式

对于熟练用户,可以直接使用命令行:

bash
# 直接执行功能,跳过菜单
gw f    # 创建 feature 分支
gw c    # 提交代码
gw t    # 创建 tag

帮助系统

bash
# 查看帮助信息
gw --help
gw -h

# 或在菜单中选择帮助选项
gw
# 选择 [0] 帮助

版本信息

bash
# 查看版本号
gw --version
gw -v

💡 使用技巧

技巧一:快速操作

bash
# 启动后直接按对应数字键
gw
1  # 立即创建 feature 分支

技巧二:学习命令

bash
# 通过菜单学习对应的命令行快捷方式
# 熟悉后可以直接使用命令行模式

技巧三:功能探索

bash
# 定期浏览主菜单,发现新功能
# 尝试不同的操作组合

技巧四:团队培训

bash
# 使用交互式菜单进行团队培训
# 直观展示所有功能
# 降低学习成本

交互式菜单是 Git Workflow 的门面,为用户提供了友好、直观的操作界面。无论是新手入门还是功能探索,都能通过主菜单快速找到需要的功能。

Released under the MIT License.