diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d7c99715..a42f3263 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -48,27 +48,63 @@ Layui 的 issue 只受理 「Bug 报告」和「功能请求」。如果是关 ## Pull Request -Layui 采用灵活的分支管理策略,我们鼓励您直接在对应的分支上提 Pull Request。为了使得 Reivew 和 Merge 的工作流程更加流畅,请仔细阅读以下说明: +Layui 采用灵活的分支管理策略,我们鼓励您选择对应的分支发送 Pull Request。 + +为了使得 Reivew 和 Merge 的工作流程更加流畅,请仔细阅读以下全部说明: ### 分支说明 -- `main` 作为主干分支,代表的是项目当前稳定的最新版本,接受 feature 和 hotfix 。 -- `*.x` 作为历史稳定版本分支,如 `2.x` 即代表 2.x 系列稳定版本,只接受 hotfix,不接受 feature 。 -- `*-dev` 作为未来大版本开发分支,如 `3.0-dev` 即代表 3.0 的开发版本,接受 feature 和 hotfix,但不保证稳定性。 +- `main` 作为主干分支,代表的是项目当前最新版本,接受 feature 和 hotfix 。 +- `*.x-stable` 作为历史稳定版本分支,如 `2.x-stable` 即代表 2.x 系列稳定版本,只接受 hotfix,不接受 feature 。 +- `dev/*` 作为未来大版本开发分支,如 `dev/3.0` 即代表 3.0 的开发版本,接受 feature 和 hotfix,但不保证稳定性。 -### Commits 规范 - -Layui 遵循 [Conventional Commits 规范](https://www.conventionalcommits.org/zh-hans/v1.0.0/),您的 `git commit` 和 PR title 都应遵循这一规范。 +其余日常分支均以 `/` 规则命名,根据 `` 决定内容修改类型。 ### 操作步骤 -1. **创建 PR 前**,请按照上述分支规则说明,拉取项目最新代码后,基于对应的分支进行开发。 -2. 在项目根目录下运行 `npm install` 安装依赖。 -3. 完成开发后,运行 `npm run checks`,确保您的代码通过了 test, lint 等工具测试。(2.x 分支不支持) -4. **创建 PR 时**,请在 title 项按照 Commits 规范填写。并请在 description 项严格遵循给出的「内容模板」规范填写,以提供必要的信息,如本次 PR 的具体变更说明、可供预览的在线演示地址等。 -5. **提交 PR 后**,确保已通过 Github CI 检查,若失败,可查看具体原因进行调整。 -6. 确保以上所有步骤都符合要求后,即可等待项目成员对您的代码进行 Review 及合并评估。 +Layui 使用 Node.js 工具链进行构建与测试,在您参与项目开发之前,请先确保已安装 Node.js 运行环境,推荐版本:`>=20.17.0` + +#### 1. 安装依赖 + +将 Layui 项目 clone 到本地后,请务必使用 `npm ci` 安装依赖,确保所有贡献者与 CI 环境基本一致。 + +```bash +npm ci +``` + +> 注:若是 Layui 2.x 版本,需使用 `npm install` + +#### 2. 开发阶段 + +依赖安装完毕后,即可启动开发模式 + +```bash +npm run dev +``` + +开发过程中,我们推荐您在编辑器安装 Prettier 插件,以保持代码风格一致。 + +完成开发后,请对代码进行静态分析和测试。 + +```bash +# lint +npm run lint + +# test +npm test +``` + +上述流程通过,即可提交代码。在 pre-commit 阶段,git hooks 会再次自动检查代码是否符合规范,并自动 lint fix 和格式化代码,对于无法自动 fix 的代码,请按照提示进行手动修改。 + +#### 3. 提交代码 + +Layui 遵循 [约定式提交](https://www.conventionalcommits.org/zh-hans/v1.0.0/) 规范,您的提交信息(git commit `message` 和 PR `title`)都应遵循这一规范。 + +- 创建 PR 时,请在 description 项严格遵循预设的「内容模板」规范填写,以提供必要的信息,如:变更说明、预览地址等。 +- 提交 PR 后,确保已通过 Github CI 检查,若失败,可查看具体原因进行调整。 + +确保以上所有步骤都符合要求后,即可等待项目成员对您的代码进行 Review 及合并评估。 ### 其他参考资料 -- [约定式提交](https://www.conventionalcommits.org/zh-hans/v1.0.0/) +- [Conventional Commits](https://www.conventionalcommits.org/zh-hans/v1.0.0/)