Git - Git Commit 格式规约

简介: Git - Git Commit 格式规约

俗话说,无规矩不成方圆。

前段时间,阿里诚意献上重磅大礼:《阿里巴巴Java开发手册》,首次公开阿里官方Java代码规范标准。这套Java统一规范标准将有助于提高行业编码规范化水平,帮助行业人员提高开发质量和效率、大大降低代码维护成本。

那么问题来了,Git提交日志是否需要规范化呢?答案是肯定的。

此时,请允许我班门弄斧附图一张

一目了然,整齐划一,有木有?同时也更能快速定位节点做过什么操作。

提交日志基本格式

(<scope>):
<空行>

<空行>

Ps:其中需要注意的是,首行部分是必需的,而 body 和 footer 部分可选。, , 内容默认使用中文。

header

第一行不能超过70个字符,第二行总是空白,其他行应该包含80个字符。类型和范围应该总是小写,如下所示。

type

  • feat(用户的新功能,而不是构建脚本的新功能)
  • fix(对用户的错误修复,而不是构建脚本的修复)
  • docs(对文档的更改)
  • style(代码格式化改动,缺少分号等)
  • refactor(重构代码,例如重命名变量)
  • test(新增或修改测试用例)
  • chore(更新咕噜任务等;没有生产代码的变化)

scope

这个取值可以是空,通常用于指明修改内容的范围。

subject

用于概括一次提交行为囊括的内容

  • 时态方面使用一般现在时,不要用过去时态。虽然查看 log 时,log 内容本身都发生在过去,然而对于主题来说,使用现在时的时态更简洁明确,并且更易达成一致性。
  • 句式使用祈使句式。即一般情况不要增加主语。因为在绝大情况下,主语都是作者「我」。
  • 句尾无需结束标点;如果使用英语,则句首同样无需大写。同样是因为主题(或称标题)本身不用形成完整的句子。

body

日志的内容主体 body 用来描述详细的提交内容,可写可不写。

footer

日志的内容页脚 footer 用来描述一些补充信息,可写可不写。

例如修复了 GitHub 平台上某个 issue 或多个 issue:

Closes #120

Closes #123, #245, #992

参考资料

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
API 开发工具 git
使用git pull遇到Automatic merge failed; fix conflicts and then commit the result.解决方案卓伊凡
使用git pull遇到Automatic merge failed; fix conflicts and then commit the result.解决方案卓伊凡
721 0
使用git pull遇到Automatic merge failed; fix conflicts and then commit the result.解决方案卓伊凡
|
存储 人工智能 缓存
Git Commit规范:为什么有些公司要求变更行数限制?·优雅草卓伊凡
Git Commit规范:为什么有些公司要求变更行数限制?·优雅草卓伊凡
556 3
Git Commit规范:为什么有些公司要求变更行数限制?·优雅草卓伊凡
|
人工智能 前端开发 Java
用git rebase命令合并开发阶段中多条commit提交记录
通过 `git rebase`,可以合并多个提交记录,使开发历史更简洁清晰。操作分为 6 步:查看提交历史 (`git log --oneline`)、设置需合并的提交数 (`git rebase -i HEAD~N`)、修改动作标识为 `s`(squash)、保存退出编辑、调整提交信息、强制推送至远程仓库 (`git push -f`)。此方法适合清理本地无关提交,但若有团队协作或冲突风险,需谨慎使用以避免问题。
2765 60
|
开发工具 git
使用Git下载指定版本或指定commit
使用Git下载指定版本或指定commit
|
JavaScript 前端开发 持续交付
实际工作中 Git Commit 代码提交规范是什么样的?
实际工作中 Git Commit 代码提交规范是什么样的?
1248 7
|
前端开发 开发工具 git
Git报错处理:解决git commit时的lint-staged错误提示。
极好的,你对Git的lint-staged出了一个令人头疼的问题。让我们一起钻研一下,找到一种方法来解决一切。 首先,我们要确定你是在做什么操作时候遇到了问题。lint-staged通常在我们运行 git commit 时启动,它做的工作是在你提交之前运行一些指定的命令检查你的代码。当lint-staged报错,多半是因为检查未通过,或者它试图运行的命令存在问题。 让我们以一种图解的方式来描绘一下这个过程,就像canvas上的画面那样。git正在温柔的将你的修改捆绑起来,准备提交。突然,lint-staged走了出来,并开始盘问着Git,寻找可能的错误。如果lint-staged找到了什么
1273 24
|
JavaScript 开发工具 git
工程化:Commitlint / 规范化Git提交消息格式
通过这些思维导图和分析说明表,您可以更加直观地理解Commitlint的安装、配置和使用方法,从而有效规范Git提交消息,提升团队协作效率和代码质量。
673 14
|
JavaScript 开发工具 git
工程化:Commitlint / 规范化Git提交消息格式
通过这些思维导图和分析说明表,您可以更加直观地理解Commitlint的安装、配置和使用方法,从而有效规范Git提交消息,提升团队协作效率和代码质量。
1532 9
|
开发工具 git
GIT:如何合并已commit的信息并进行push操作
通过上述步骤,您可以有效地合并已提交的信息,并保持项目的提交历史整洁。记得在执行这些操作之前备份当前工作状态,以防万一。这样的做法不仅有助于项目维护,也能提升团队协作的效率。
1314 5
|
开发工具 git
GIT:如何合并已commit的信息并进行push操作
通过上述步骤,您可以有效地合并已提交的信息,并保持项目的提交历史整洁。记得在执行这些操作之前备份当前工作状态,以防万一。这样的做法不仅有助于项目维护,也能提升团队协作的效率。
1200 3