# 指标和分级参考

了解 GitHub 用于评估您的存储库代码质量的术语。

> \[!NOTE]
> GitHub Code Quality 当前正处于 公共预览版 阶段，并可能会发生变化。
> 在 公共预览版期间，Code Quality 不会计费，尽管 Code Quality 扫描将使用 GitHub Actions 分钟。

本文提供用于 Code Quality指标和分级的定义。

您可以在\*\*<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality\*\* 选项卡中查看存储库的基于规则的结果，在**常规发现** 标签下的“<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-code-review" aria-label="code review" role="img"><path d="M1.75 1h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 13H8.061l-2.574 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25v-8.5C0 1.784.784 1 1.75 1ZM1.5 2.75v8.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-8.5a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25Zm5.28 1.72a.75.75 0 0 1 0 1.06L5.31 7l1.47 1.47a.751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018l-2-2a.75.75 0 0 1 0-1.06l2-2a.75.75 0 0 1 1.06 0Zm2.44 0a.75.75 0 0 1 1.06 0l2 2a.75.75 0 0 1 0 1.06l-2 2a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L10.69 7 9.22 5.53a.75.75 0 0 1 0-1.06Z"></path></svg>代码质量”选项卡中。

## 指标定义

下表提供了针对存储库报告的每个指标的定义。

| 指标              | Definition                                                       | 示例发现                                  |
| --------------- | ---------------------------------------------------------------- | ------------------------------------- |
| **Reliability** | 评估代码是否正确、可预测且一致地执行其预期函数。 可靠代码不受 bug 影响，可安全地处理错误，并在正常和边缘情况下按预期运行。 | 性能、并发、错误处理、正确性、API 设计、辅助功能、国际化或安全性的问题 |
| \*\*            |                                                                  |                                       |

```
          **可维护性 | 评估理解、修改和扩展代码随时间推移是多么容易。 可维护的代码遵循最佳做法，避免不必要的复杂性，并组织方便将来的更改和协作。 | 不使用最佳做法、未使用/死代码、重复代码、复杂性、逻辑冗余、文档不充分、依赖项问题 |
```

## 严重性级别

严重性级别用于指示代码质量发现的潜在影响或紧迫性。 它们可帮助用户确定修正工作的优先级，并向利益干系人传达风险。 严重性由检测到问题的规则决定，遵循CodeQL 的约定和行业标准。

| Severity  | Definition                                   |
| --------- | -------------------------------------------- |
| **Error** | 表示可能导致 bug、故障或重大可维护性风险的高严重性问题。               |
| **警告**    | 指示可能影响代码质量或可靠性的中等严重性问题，但并不立即至关重要。            |
| **注意**    | 指示低严重性问题、轻微改进或建议。 这些发现对于代码的持续性健康状况和可维护性非常有用。 |

## 评级定义

这些评级用于汇总代码库的整体可靠性和可维护性，其依据是通过 CodeQL 扫描完整默认分支时发现的基于规则结果的严重性。

| Rating   | Definition                      | 条件（基于调查结果）      |
| -------- | ------------------------------- | --------------- |
| **优秀**   | 代码库演示了可靠性和可维护性的最佳做法。            | 未检测到代码质量问题      |
| **良好**   | 代码库存在低严重级别问题或仅需小幅改进。            | 至少 1 个“通知”级别的结果 |
| **一般**   | 代码库具有中等严重性问题，这些问题可能会影响质量，但并不重要。 | ≥1“警告”等级发现      |
| **需要改进** | 代码库存在高严重级别问题，包括漏洞或重大可维护性风险。     | 至少 1 个“错误”级别的结果 |

## 延伸阅读

* [关于GitHub代码质量](/zh/code-security/code-quality/concepts/about-code-quality)
* [解读存储库的代码质量评估结果](/zh/code-security/code-quality/how-tos/interpret-results)