Electron Forge 项目贡献与开发指南深度解析
forge 项目地址: https://gitcode.com/gh_mirrors/forge24/forge
前言
Electron Forge 作为 Electron 生态中的重要工具链项目,为开发者提供了完整的 Electron 应用打包、发布和工作流解决方案。本文将深入剖析如何参与 Electron Forge 项目的开发工作,包括本地环境搭建、代码修改规范、测试流程以及发布机制等核心内容。
开发环境准备
项目初始化
首先需要获取项目源代码并完成基础环境搭建:
git clone 项目仓库地址
cd forge
yarn install # 安装所有依赖
yarn build # 构建所有 TypeScript 代码
本地测试方案
Electron Forge 提供了灵活的本地测试方案,可以通过符号链接方式将本地修改实时应用到测试项目中:
- 构建并准备符号链接:
yarn build
yarn link:prepare
- 创建测试项目(两种方式):
- 使用本地构建初始化新项目:
LINK_FORGE_DEPENDENCIES_ON_INIT=1 node path/to/forge/packages/api/cli/dist/electron-forge-init.js my-app
- 为现有项目链接本地包:
yarn link @electron-forge/core --link-folder=path/to/forge/.links
开发过程中,修改代码后需要重新构建(yarn build:fast
或 yarn build
)才能使更改生效。
代码贡献规范
提交信息格式
项目采用 Conventional Commits 规范,提交信息应遵循以下格式:
<类型>[可选范围]: <描述>
[可选正文]
[可选脚注]
常见类型包括:
- feat: 新功能
- fix: 错误修复
- docs: 文档变更
- test: 测试相关
- chore: 构建或辅助工具变更
代码修改原则
- 最小化原则:保持代码库精简,新功能应考虑是否适合作为独立模块
- 测试覆盖:除非特殊情况,所有变更都应包含相应测试
- 文档同步:API 变更必须更新相关文档
- 版本管理:贡献者无需手动修改版本号,由维护者统一管理
测试体系
项目包含大量测试用例,执行完整测试套件:
yarn test
测试会在 CI 环境中验证以下内容:
- 各平台下的构建情况
- 支持的 Node.js 版本兼容性
- 代码风格一致性
文档编写指南
修改 API 文档时需注意:
-
首行要求:
- 以句号结尾
- 使用祈使语气(如"创建"而非"Creates")
- 不应是函数签名
-
首行首单词:
- 正确大写
- 避免使用"This"
项目发布流程(维护者专用)
发布前准备
- 确保本地代码与 main 分支同步
- 通过本地测试
- 验证 CI 构建状态
- 清理工作区并安装最新依赖
npm 包发布
- 登录 npm 账号
- 执行发布命令:
yarn lerna:publish
- 输入 TOTP 验证码
发布脚本会自动:
- 根据 Conventional Commits 确定版本号
- 创建带标签的版本提交
- 发布所有 @electron-forge 包到 npm
GitHub 发布
- 创建新版本发布
- 选择已发布的标签
- 基于 main 分支
- 使用自动生成的发布说明
新增包处理
添加新 @electron-forge 包时需要:
- 确保包版本与当前 Forge 版本一致
- 手动发布初始版本:
npm publish --access public --dry-run # 先验证
npm publish --access public
- 之后可正常使用发布流程
最佳实践建议
- 问题排查:提交问题前先搜索现有问题,确保不重复
- 开发效率:频繁使用
yarn build:fast
加速开发循环 - 代码质量:保持小颗粒度提交,便于审查和回滚
- 协作开发:继续他人工作时保留原作者信息
通过遵循这些指南,开发者可以高效地为 Electron Forge 项目做出贡献,共同推动 Electron 生态系统的发展。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考