我是怎么写 Git Commit message 的?

做用

编写格式化的 commit message 可以大大提升代码的维护效率。html

好比:git

  • 能够提供更多的历史信息,方便快速浏览;
  • 能够过滤某些 commit(好比文档改动),便于快速查找信息;
  • 能够直接从 commit 生成 Change log

用的什么规范?

<type>(<scope>): <subject>
// 空一行
<body>
// 空一行
<footer>

其中,Header 是必需的,Body 和 Footer 能够省略。npm

type

type 用于说明 commit 的类别。gulp

  • feature A new feature
  • fix A bug fix
  • docs Documentation only changes
  • style Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
  • refactor A code change that neither fixes a bug nor adds a feature
  • perf A code change that improves performance
  • test Adding missing tests or correcting existing tests
  • build Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)
  • ci Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)
  • chore Other changes that don't modify src or test files
  • revert Reverts a previous commit

scope

scope 用于说明 commit 影响的范围,好比数据层、控制层、视图层、具体模块等等,视项目不一样而不一样。函数

subject

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

body

Body 部分是对本次 commit 的详细描述,能够分红多行。ui

footer

BREAKING CHANGE,用来描述当前 commit 与上一个版本不兼容的地方。spa

Issue,用来描述当前 commit 针对的某个issue。插件

参考文章

Commit message 和 Change log 编写指南code

用的什么辅助工具?

太教条了,太累... 给你们分享一个我使用的工具。

JetBrains IDE 插件,在 GoLandPhpStorm 中 均可以在插件市场搜索 Git Commit Message Helper

插件地址:Git Commit Message Helper

安装后效果,在 git commit 时:

g-1.png

g-2.png

我们看一下效果:

g-3.png

g-4.png

这时,点击 Commit 或 Commit and Push... 便可。

赶快去体验吧。

推荐阅读

相关文章
相关标签/搜索