1. 概述

本文档旨在规范团队代码共建和提交流程,确保代码质量、可维护性和协作效率。

2. 环境准备

2.1 开发工具配置

# 安装必备工具

npm install -g commitizen cz-conventional-changelog

2.2 Git配置

# 设置用户名和邮箱

git config --global user.name "您的姓名"

git config --global user.email "您的邮箱"

 

# 设置commit模板

git config --global commit.template ~/.git_commit_template

3. 代码提交流程

3.1 准备工作

  1. 从主分支拉取最新代码

git checkout main

git pull origin main

  1. 创建功能分支

git checkout -b feat/功能名称

#

git checkout -b fix/问题描述

3.2 开发与提交

  1. 进行代码修改
  2. 添加变更文件

git add <文件路径>

# 或添加所有变更

git add .

  1. 提交代码(使用约定式提交)

git-cz

# 或手动提交

git commit -m "feat: 添加新功能"

  1. 推送分支到远程

git push origin feat/功能名称

3.3 提交信息规范

使用约定式提交(Conventional Commits)格式:

<类型>[可选范围]: <描述>

 

[可选正文]

 

[可选脚注]

常用类型:

  • feat: 新功能
  • fix: 修复问题
  • docs: 文档更新
  • style: 代码格式调整
  • refactor: 代码重构
  • test: 测试相关
  • chore: 构建过程或辅助工具变动

示例:

feat(auth): 添加用户登录功能

 

- 实现JWT认证

- 添加登录页面组件

 

Closes #123

4. 代码审查流程

4.1 创建Pull Request

  1. 在Git仓库页面创建PR
  2. 填写PR模板内容:
    • 功能描述
    • 相关Issue链接
    • 测试情况
    • 截图(如适用)

4.2 代码审查要点

  • 代码是否符合编码规范
  • 功能实现是否正确
  • 是否有适当的测试覆盖
  • 文档是否需要更新

4.3 处理审查意见

  1. 根据审查意见修改代码
  2. 推送更新到同一分支
  3. 在PR中回复已处理的评论

5. 合并与部署

5.1 合并策略

  • 使用Squash Merge保持提交历史整洁
  • 删除已合并的功能分支

5.2 版本发布

# 使用标准版本号

npm version [major|minor|patch]

6. 注意事项

  1. 禁止直接推送主分支
  2. 每次提交应聚焦单一功能或修复
  3. 确保通过所有测试后再提交PR
  4. 及时解决代码冲突

7. 常见问题

7.1 代码冲突解决

# 拉取最新主分支代码

git checkout main

git pull origin main

 

# 切换回功能分支

git checkout feat/功能名称

 

# 合并主分支

git merge main

 

# 解决冲突后提交

git add .

git commit -m "resolve conflicts"

8. 附录

8.1 Git钩子示例

 .git/hooks/pre-commit 中添加:

#!/bin/sh

npm run lint

npm test

8.2 PR模板示例

## 变更描述

 

## 相关Issue

 

## 测试情况

 

## 截图(如需要)

 

Logo

社区规范:仅讨论OpenHarmony相关问题。

更多推荐