本项目配置了 GitHub Actions 自动构建工作流,当你推送一个新的版本标签时,会自动构建 macOS 和 Windows 版本的应用程序。
-
更新版本号
# 更新 package.json 中的版本号 npm version patch # 补丁版本 (1.0.0 -> 1.0.1) npm version minor # 次要版本 (1.0.0 -> 1.1.0) npm version major # 主要版本 (1.0.0 -> 2.0.0)
-
创建并推送标签
# 创建标签 git tag v1.0.1 # 推送标签到 GitHub git push origin v1.0.1
-
或者一步完成
# npm version 会自动创建 git 标签 npm version patch git push origin main --tags
自动构建会生成以下文件:
- macOS Intel:
MoliTodo-{version}-x64.dmg(适用于 Intel 芯片的 Mac) - macOS Apple Silicon:
MoliTodo-{version}-arm64.dmg(适用于 M1/M2/M3 芯片的 Mac) - Windows:
MoliTodo Setup {version}.exe(NSIS 安装程序)
如果需要手动构建应用程序:
# 安装依赖
npm install
# 构建 macOS 版本(同时构建 Intel 和 Apple Silicon)
npm run build:mac
# 只构建 macOS Intel 版本
npm run build:mac:intel
# 只构建 macOS Apple Silicon 版本
npm run build:mac:arm
# 构建 Windows 版本 (需要在 Windows 或使用 Wine)
npm run build:win
# 构建所有平台
npm run build:all- GitHub Actions 会在标签推送时自动触发
- 并行构建 macOS 和 Windows 版本
- 自动创建 GitHub Release
- 上传构建产物到 Release 页面
- 生成发布说明
- 确保
package.json中的版本号与标签版本一致 - 标签必须以
v开头 (如v1.0.0) - 构建过程大约需要 5-10 分钟
- 如果构建失败,检查 GitHub Actions 日志获取详细信息
GITHUB_TOKEN是 GitHub 自动提供的,无需手动配置
🎨 重大架构升级
- 统一日历组件: 全新的 UnifiedCalendar.vue 组件替代 MonthlyCalendar.vue 和 WeeklyView.vue
- 一体化设计: 周视图和月视图完美融合,提供无缝切换体验
- 纯 CSS 实现: 移除 FullCalendar 等外部依赖,基于 Tailwind CSS 原生实现
- 性能优化: 减少包体积,提高渲染性能和响应速度
🔄 用户体验提升
- 统一交互: 标准化任务点击、日期选择、导航等交互行为
- 智能布局: 固定头部导航,可滚动内容区域,隐藏滚动条
- 视觉一致性: 周视图和月视图使用统一的设计语言
- 响应式优化: 完美适配不同屏幕尺寸
🛠️ 技术改进
- 组件解耦: 单一职责的组件设计,便于维护和扩展
- 样式重构: 完全使用 Tailwind CSS,支持主题切换
- 错误处理: 完善的加载状态、错误状态和重试机制
- 自动迁移: 现有数据和设置完全保留,无缝升级
GitHub Actions 会自动为每个工作流运行提供 GITHUB_TOKEN:
- ✅ 自动生成:无需在仓库 Secrets 中添加
- ✅ 权限充足:已配置
contents: write权限用于创建 Release - ✅ 安全可靠:每次运行都会生成新的临时令牌
在推送标签之前,建议先在本地测试构建:
# 测试 macOS 构建
npm run build:mac
# 检查生成的文件
ls -la dist/如果遇到 "Dependencies lock file is not found" 错误:
- 本项目不使用 lock 文件,已移除 GitHub Actions 中的缓存配置
- 使用
npm install而不是npm ci
- 检查 package.json 中的构建脚本是否正确
- 确保所有依赖都已正确安装
- 查看 GitHub Actions 日志获取详细错误信息