写给git commit message的目的是提供更多的历史信息,方便快速浏览。可以看出直接的信息, 可以直接看到书提交的代码,组织结构等等。其最终目标
就是后续查找问题能够快速定位。关于修改点能狗很明显的做出区别,是一个有价值的commit message。
commit message 包括三个部分:Header,Body 和 Footer。
<type>(<scope>): <subject>
// 空一行
<body>
// 空一行
<footer>
其中,Header 是必填,Body 和 Footer 是选填。
Header
Header 包括三个字段:type(必填)、scope(选填)和 subject(必填)
type 用于说明 commit 的类别,只允许使用下面 7 个标识。
[DTS Number] [ BBT ] [ UDC ] [ UTS ] [ TTR53 ] [ Alan ]
feat: 登陆特新开发
增加扫描组上传、扫描组下载、用户权限服务登出、群组服务登出、通讯录服务登出、摄像头服务登出,群组成员、列表增量下载
Author: Alan li
feat:新功能(feature)
fix:修补bug
docs:文档(documentation)
style: 格式(不影响代码运行的变动)
refactor:重构(即不是新增功能,也不是修改bug的代码变动)
test:增加测试
chore:构建过程或辅助工具的变动
以上这样的操作方式仁者见仁,也不一定适用所有的团队
type 为 feat 和 fix,则该 commit 将肯定出现在 Change log 之中。
scope
scope 用于说明 commit 影响的范围,比如数据层、控制层、视图层等等,视项目不同而不同。
subject
subject 是 commit 目的的简短描述,不超过50个字符
# 以动词开头,使用第一人称现在时,比如 change,而不是 changed 或 changes
# 第一个字母小写
# 结尾不加句号(.)
使用相关的工具进行自动生成
npm install -g commitizen
git add
git commit -m "commit_message" # 上传提交信息
安装编辑器插件
- pycharm
git commit template
- vscode
git-commit-plugin