Header包括三个字段:type、scope和 subject。(scope可选)

git commit -m 'fix: #512 bug'

git commit -m 'feat($login): remember user name'

(1)type

type用于说明 commit 的类别,只允许使用下面7个标识:

==feat : 新功能==

==fix : 修补bug==

==docs:文档==

==style:格式==

==refactor:重构==

==test : 增加测试==

==chore:构建过程或辅助工具的变动==

type为==feat和fix==,该 commit 将出现在 Change log 之中。其他标识可选。

(2)scope

scope用于说明 commit 影响的范围,比如数据层、控制层、视图层等等,视项目不同而不同。

(3)subject

subject是 commit 目的的简短描述,不超过50个字符。

//以动词开头,使用第一人称现在时,比如change,而不是changed或changes

//第一个字母小写

//结尾不加句号(.)

上面的只是一种规范,有工具可以很好的生成commit log,但不遵循也能够提交。但有规范的清晰明了的commit message既便于浏览和查找以及生成commit log,同时也是 一种良好的习惯。

另外很重要的一点是:

当我们执行commit命令之后发现有文件未添加或是commit message书写有错误,如果还未push到远端,那么可以使用下面方法进行处理。如果已经push到远端,那么其就无法被修改。

//添加未被添加到暂存区的文件

//然后使用--amend

git add [filename]

git commit --amend

//会自动加上已经修改但未被添加到暂存区的文件

git commit --amend -a

b98d1d056c953fcd52947fe0362854da.png

个人笔记记录 2021 ~ 2025