Featured image of post (翻译)Udacity Git Commit Message Style Guide

(翻译)Udacity Git Commit Message Style Guide

配图:assorted-color wooden road sign photo – Free Sign Image on Unsplash

原文:Udacity Git Commit Message Style Guide

介绍

此风格指南可以用作你的项目的官方风格指南。Udacity 评估员会用这份指南来检查你的项目。关于软件开发的「完美」风格,世上有很多观点,但是,为了让学生清楚的明白在做课堂项目时应该遵守什么风格,我们强烈建议所有学生遵守这份指南。

Commit Message

Message 结构

一个 commit message 应该有以下三部分,并用空白行分隔: 标题,一个可选的正文和一个可选的页脚,看起来是这样子的

1
2
3
4
5
type: Subject

body

footer

标题包含了 message 的类型和主题

类型

标题中的类型可以有以下选择:

  • feat: 一个新的特性
  • fix: 一个 bug 修复
  • docs: 文档的修改
  • style: 格式化,缺失的分号等等,没有代码被修改
  • refactor: 重构生产环境代码
  • test: 添加测试,重构测试,没有生产环境代码修改
  • chore: 更新构建任务,包管理配置等等,没有生产环境代码修改

主题

主题不应超过 50 个字符,不能以大写字母开头并且不用以句号结尾

用陈述的主播描述这次 commit 做了什么,而不是已经做了什么。例如,使用 change,而不是 changed 或者 changes.

译者注:这里应该是强调英语中的时态,不要用过去时,强调这次提交是做什么的

正文

不是所有的提交都复杂到需要一个正文,所以正文是可选的,仅当此次提交必须要说明一下或者要交待一下上下文,使用正文来解释此次提交的 what 和 why,而不是 how。

页脚

页脚是可选的,用于标注相关的 issue ID

一个示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
feat: 用不多于 50 个字总结此次提交

如果需要,这里可以有更多的细节展开,用 72 个字左右。在某些情况下,summary 的第一行会被视为主题而剩下的文字会被视为正文。在 summary 中使用空行时要非常慎重(除非你想忽略整个正文);当你同时使用 `log`, `shortlog`  `rebase` 中的两个时会有些歧义。(译者注:这里的翻译可能不太准确,待测试确认)

解释这次提交是解决的什么问题,专注于为什么这样修改,而不是怎么修改(代码已经解释了)。是否有副作用或者不可预期的改变?这里就是交待这些东西的地方。

接下的的内容需要隔一个空白行。

- 项目符号是可以使用的
- 通常,横线和星号被用作项目符号,后面紧跟一个空格,行与行之间隔一个空白行,但是这些约定可以稍做调整

如果你有使用 Bug 追踪系统,将系统中的 bug 编号放在这里,像这样:

Resolves: #123
See also: #456, #789
Licensed under CC BY-NC-SA 4.0
Built with Hugo
主题 StackJimmy 设计