如何书写规范的提交信息

  • 在软件开发中,规范的提交信息对于项目版本管理和团队协作非常重要。
  • 本文介绍了如何使用 Conventional Commits 规范书写清晰、易于理解的提交信息。
  • 示例包括添加新功能、修复Bug、文档更新、构建/工具相关、性能优化、测试相关、样式/格式、重构和回滚变更等情况。

Conventional Commits 规范中,提交信息的 ( ) 内部包含两个部分:类型(Type) 和作用域(Scope)。这两个部分的目的是为了更清晰地描述提交的类别和影响范围。

类型(Type):

表示提交的类别,使用标识性的词汇来描述提交的目的。常见的类型包括 feat(新功能)、fix(修复Bug)、docs(文档更新)、chore(构建/工具相关)等。例如:feat, fix, docs, chore, style, refactor, test, perf
作用域(Scope):

描述本次提交影响的范围,可以是文件、模块、功能等。作用域是可选的,如果不需要特定的作用域,可以省略。例如:(user), (button), (readme), (build), (css), (api), (unit)。
综合起来,提交信息的格式为:

<类型>(<作用域>): <摘要>

下面是一个例子:

feat(user): add user authentication

这个提交信息表示在 user 模块下添加了新的用户认证功能。在实际应用中,根据项目和团队的实际需求,可以适当调整提交信息的格式和内容。重要的是保持提交信息的一致性和清晰度。

示例

下面给出几个不同类型的提交信息的例子,符合 Conventional Commits 规范:

1.添加新功能(feat):

feat(user): add user authentication
  • 表示在 user 模块下添加了新的用户认证功能。

2.修复Bug(fix):

fix(button): resolve issue with button click event
  • 表示解决了与按钮点击事件相关的问题。

3.文档更新(docs):

docs(readme): update project documentation
  • 表示更新了项目文档(例如 README 文件)。

4.构建/工具相关(chore):

chore(build): update build scripts for better performance
  • 表示更新构建脚本以提高性能。

5.性能优化(perf):

perf(api): improve response time for API endpoint
  • 表示优化了 API 端点的响应时间。

6.测试相关(test):

test(unit): add new unit tests for user service
  • 表示为用户服务添加了新的单元测试。

7.样式/格式(style):

style(css): fix indentation in stylesheets
  • 表示修复样式表中的缩进问题。

8.重构(refactor):

refactor(user): restructure user authentication logic
  • 表示对用户认证逻辑进行了重构。

9.回滚变更(revert):

revert: revert previous commit that introduced a bug
  • 表示回滚先前引入的导致问题的提交。

在实际项目中,根据团队的实际需求和规范,提交信息的具体格式可能会有所不同。保持清晰、简洁和一致的提交信息有助于更好地管理项目的版本历史。