⚠️
评审 Checklist:
- 代码是否符合 SOLID 原则
- 是否引入安全漏洞
- 测试覆盖率是否达标
- 文档是否同步更新
评审流程
代码分析工具
增强流程
- 预提交检查
# 使用Husky配置Git钩子
pnpm add -D husky lint-staged
npx husky install
- 自动化扫描
module.exports = {
extends: ['plugin:sonarjs/recommended'],
rules: {
'complexity': ['error', { max: 5 }],
'max-depth': ['error', 3]
}
};
- 人工评审要点
- 架构合理性
- 可维护性(代码重复率小于5%)
- 安全规范遵守
工具对比
工具 | 代码分析 | AI 辅助 | IDE 集成 | 学习曲线 |
---|---|---|---|---|
GitHub PR | 🔶 | ✅ | ✅ | 低 |
SonarQube | ✅ | ❌ | ✅ | 中 |
最佳实践
// 评审注释示例
export const CodeReviewComment = ({ children }) => (
<div className="bg-yellow-50 p-4 rounded-lg mt-4">
<span className="font-semibold">🤖 AI 建议:</span>
{children}
</div>
);
自动化集成
name: Code Quality
on: [pull_request]
jobs:
sonarqube:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: SonarSource/sonarqube-scan-action@v1.8
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
Last updated on