From 650f3e1876952a9ca78c5438de61903e0543aabd Mon Sep 17 00:00:00 2001 From: linjiacheng <425765923@qq.com> Date: Thu, 23 May 2024 16:44:56 +0800 Subject: [PATCH 1/2] =?UTF-8?q?docs(specification.md):=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9Ecommit=E8=A7=84=E8=8C=83=E5=92=8C=E5=8F=91=E5=B8=83?= =?UTF-8?q?=E8=A7=84=E8=8C=83=EF=BC=8C=E8=A1=A5=E5=85=85=E8=A1=A5=E4=B8=81?= =?UTF-8?q?=E5=BD=A2=E5=BC=8F=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zh-cn/specification.md | 72 +++++++++++++++++++++++++++++++++++------- 1 file changed, 61 insertions(+), 11 deletions(-) diff --git a/zh-cn/specification.md b/zh-cn/specification.md index b97e00a..ec48f1a 100644 --- a/zh-cn/specification.md +++ b/zh-cn/specification.md @@ -26,13 +26,52 @@ HarmonyOS React-Native 三方库(以下简称 RNOH 三方库)是 React-Nativ ![branch_rules2](../img/branch_rules2.png) +## commit规范 + +在团队协作和开源项目中,遵循统一的 Git commit 规范有助于保持代码库整洁、历史记录清晰,并且方便代码审查和问题追踪。以下是开源社区推荐的最佳实践: + +### 使用标准的提交消息格式 + +#### 标题(header) + +标题行是必须的,简洁明了地描述提交的目的,一般不超过 50 个字符。 + +格式通常为: + +`(): ` + +**type** :表示提交的类别,常见类型包括: + +- `feat`:新功能(feature) +- `fix`:修补 bug +- `docs`:文档变更 +- `style`:代码格式(不影响代码运行的变动) +- `refactor`:重构(既不是新增功能,也不是修复 bug 的代码变动) +- `perf`:优化相关,比如提升性能、体验 +- `test`:增加测试 +- `chore`:构建过程或辅助工具的变动 +- `ci`: 修改集成配置的文件或者脚本 + +**scope**:表示影响范围(可选),例如模块或文件名。 + +**subject**:一句话描述这次提交的目的,使用动词开头,如 "Add","Fix","Update" 等。 + +#### 示例: + +``` +feat(auth): add login functionality +fix(button): correct hover state on Safari +docs(readme): update installation instructions +``` + ## 发布规范 发布步骤: 1. 确保已通过自检测试,并完成代码格式检查; -2. 确保已将变更合入 `sig` 分支; -3. 发布新的 Tag 和 Release(github 上操作); +2. 确保已将变更合入 `sig` 分支 +3. 提交发布相关信息(oh-package版本、package版本和har),参考 [release commit](https://github.com/react-native-oh-library/react-native-harmony-svg/commit/a35397ff4a030860ca4e9ba8e9646428869c822e). +4. 发布新的 Tag 和 Release(github 上操作); ### 代码格式检查 @@ -111,12 +150,22 @@ RNOH 三方库以原库补丁的形式发布(若原库需要鸿蒙化适配, **HarmonyOS:** +需要删除安卓和iOS实现 + +``` +. +├── harmony +├── android // 删除 +├── apple // 删除 +├── ios // 删除 +├── package.json +``` + 需要添加别名 在 `package.json` 里添加 "harmony" 字段: ```json -// 暂不配置 { "harmony": { "alias": {原NPM包名} @@ -155,7 +204,7 @@ import LinearGradient from "react-native-linear-gradient"; > [!WARNING] 目录结构需要和原库保持一致! -我们要尽量遵循能少改就少改的原则,对于新架构的三方库,剔除了其他平台后,如果 JS 代码无改动,理论上只需要重新在 index 中重新导出即可。若有 harmony 平台的改动,则需要保留。 +我们要尽量遵循**能少改就少改的原则**,对于新架构的三方库,剔除了其他平台后,如果 JS 代码无改动,理论上只需要重新在 index 中重新导出即可。若有 harmony 平台的改动,则需要保留。 平台间的解耦不意味着 npm 包的解耦,实际上 JS 侧还需要依赖原库的代码。 @@ -169,14 +218,15 @@ import LinearGradient from "react-native-linear-gradient"; **可供参考的库:** -| 原库名 | 仓库地址 | -| ------------------------------------- | --------------------------------------------------------------------------------------------------- | +| 原库名 | 仓库地址 | +| ------------------------------------- | ------------------------------------------------------------ | +| react-native-svg | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-harmony-svg) | | react-native-linear-gradient | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-linear-gradient/tree/sig) | -| @react-native-community/slider | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-slider/tree/sig) | -| @react-native-picker/picker | [OpenHarmony SIG](https://github.com/react-native-oh-library/picker/tree/sig) | -| react-native-pager-view | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-pager-view/tree/sig) | -| @react-native-masked-view/masked-view | [OpenHarmony SIG](https://github.com/react-native-oh-library/masked-view/tree/sig) | -| react-native-fast-image | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-fast-image/tree/sig) | +| @react-native-community/slider | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-slider/tree/sig) | +| @react-native-picker/picker | [OpenHarmony SIG](https://github.com/react-native-oh-library/picker/tree/sig) | +| react-native-pager-view | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-pager-view/tree/sig) | +| @react-native-masked-view/masked-view | [OpenHarmony SIG](https://github.com/react-native-oh-library/masked-view/tree/sig) | +| react-native-fast-image | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-fast-image/tree/sig) | ## 版本管理规范 -- Gitee From 8d563c614d191cf3e99144e76e7a36e749384eb2 Mon Sep 17 00:00:00 2001 From: linjiacheng <425765923@qq.com> Date: Thu, 23 May 2024 16:51:42 +0800 Subject: [PATCH 2/2] =?UTF-8?q?style(specification.md):=20=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=E5=8C=96=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zh-cn/specification.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/zh-cn/specification.md b/zh-cn/specification.md index ec48f1a..43e4bce 100644 --- a/zh-cn/specification.md +++ b/zh-cn/specification.md @@ -26,7 +26,7 @@ HarmonyOS React-Native 三方库(以下简称 RNOH 三方库)是 React-Nativ ![branch_rules2](../img/branch_rules2.png) -## commit规范 +## commit 规范 在团队协作和开源项目中,遵循统一的 Git commit 规范有助于保持代码库整洁、历史记录清晰,并且方便代码审查和问题追踪。以下是开源社区推荐的最佳实践: @@ -70,7 +70,7 @@ docs(readme): update installation instructions 1. 确保已通过自检测试,并完成代码格式检查; 2. 确保已将变更合入 `sig` 分支 -3. 提交发布相关信息(oh-package版本、package版本和har),参考 [release commit](https://github.com/react-native-oh-library/react-native-harmony-svg/commit/a35397ff4a030860ca4e9ba8e9646428869c822e). +3. 提交发布相关信息(oh-package 版本、package 版本和 har),参考 [release commit](https://github.com/react-native-oh-library/react-native-harmony-svg/commit/a35397ff4a030860ca4e9ba8e9646428869c822e). 4. 发布新的 Tag 和 Release(github 上操作); ### 代码格式检查 @@ -150,7 +150,7 @@ RNOH 三方库以原库补丁的形式发布(若原库需要鸿蒙化适配, **HarmonyOS:** -需要删除安卓和iOS实现 +需要删除安卓和 iOS 实现 ``` . @@ -218,15 +218,15 @@ import LinearGradient from "react-native-linear-gradient"; **可供参考的库:** -| 原库名 | 仓库地址 | -| ------------------------------------- | ------------------------------------------------------------ | -| react-native-svg | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-harmony-svg) | +| 原库名 | 仓库地址 | +| ------------------------------------- | --------------------------------------------------------------------------------------------------- | +| react-native-svg | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-harmony-svg) | | react-native-linear-gradient | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-linear-gradient/tree/sig) | -| @react-native-community/slider | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-slider/tree/sig) | -| @react-native-picker/picker | [OpenHarmony SIG](https://github.com/react-native-oh-library/picker/tree/sig) | -| react-native-pager-view | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-pager-view/tree/sig) | -| @react-native-masked-view/masked-view | [OpenHarmony SIG](https://github.com/react-native-oh-library/masked-view/tree/sig) | -| react-native-fast-image | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-fast-image/tree/sig) | +| @react-native-community/slider | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-slider/tree/sig) | +| @react-native-picker/picker | [OpenHarmony SIG](https://github.com/react-native-oh-library/picker/tree/sig) | +| react-native-pager-view | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-pager-view/tree/sig) | +| @react-native-masked-view/masked-view | [OpenHarmony SIG](https://github.com/react-native-oh-library/masked-view/tree/sig) | +| react-native-fast-image | [OpenHarmony SIG](https://github.com/react-native-oh-library/react-native-fast-image/tree/sig) | ## 版本管理规范 -- Gitee