这个目录包含 CodeMetrics 的各种使用示例和输出样本。
# 分析嵌入式驱动代码
codemetrics /path/to/driver -p embedded
# 输出包含:
# - 目录树结构
# - 代码统计表
# - COCOMO 成本估算
# - 代码健康度分析
# - Top 10 最大文件适用场景:
- Linux 内核驱动
- 嵌入式固件
- 实时系统
# 分析前端/后端项目
codemetrics /path/to/webapp -p semi-detached -n 20
# -p semi-detached: 中等复杂度项目
# -n 20: 显示 Top 20 文件适用场景:
- React/Vue 前端项目
- Node.js/Django/Flask 后端
- 全栈 Web 应用
# 分析简单脚本集合
codemetrics /path/to/scripts -p organic
# -p organic: 简单项目类型适用场景:
- Shell 脚本
- Python 自动化工具
- DevOps 脚本
# 排除测试和文档目录
codemetrics /path/to/project -p embedded -e "test/*,docs/*,vendor/*"# 使用 --no-save 选项
codemetrics /path/to/project -p embedded --no-save > /dev/null# 适合保存到文件或 CI/CD 环境
codemetrics /path/to/project -p embedded --no-color > report.txtCodeMetrics 自动生成多种格式的报告:
- 彩色树形结构
- 格式化的统计表格
- 实时进度显示
# 位置:codemetrics_output/report_YYYYMMDD_HHMMSS.json适合:
- 程序解析
- CI/CD 集成
- 数据分析
# 位置:codemetrics_output/report_YYYYMMDD_HHMMSS.md适合:
- 文档生成
- GitHub/GitLab 展示
- 项目汇报
# 位置:codemetrics_output/report_YYYYMMDD_HHMMSS.html适合:
- 浏览器查看
- 团队分享
- 演示展示
# .github/workflows/code-metrics.yml
name: Code Metrics
on: [push]
jobs:
metrics:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install CodeMetrics
run: |
git clone https://github.com/YOUR_USERNAME/CodeMetrics.git
cd CodeMetrics && ./scripts/install.sh
- name: Run Analysis
run: codemetrics . -p semi-detached
- name: Upload Report
uses: actions/upload-artifact@v2
with:
name: code-metrics-report
path: codemetrics_output/#!/bin/bash
# .git/hooks/pre-commit
# 在提交前自动分析代码
codemetrics . -p embedded --no-color > /tmp/codemetrics.txt
echo "📊 代码度量分析完成"项目规模: 15,000 行 C 代码
预估工期: 8.5 个月
建议团队: 2.3 人
成本估算: $97,500 USD
项目规模: 25,000 行 JS/TS 代码
预估工期: 11.2 个月
建议团队: 2.8 人
成本估算: $168,000 USD
项目规模: 5,000 行 Python 代码
预估工期: 4.2 个月
建议团队: 1.5 人
成本估算: $31,500 USD
- 安装 CodeMetrics
- 分析你的第一个项目
- 理解输出结果
- 根据健康度指标改进代码
- 自定义配置文件
- 集成到开发工作流
- 批量分析多个项目
- 生成定期报告
- 定期分析: 每周或每次发布前运行分析
- 追踪趋势: 保存历史报告,观察代码质量变化
- 团队分享: 将 HTML 报告分享给团队成员
- 设定目标: 根据健康度指标设定改进目标
- CI 集成: 在 CI/CD 流程中自动运行
如果你有好的使用场景或示例,欢迎:
- 添加到这个目录
- 提交 Pull Request
- 分享给社区
感谢你的贡献!🌟