对于怎么写
Git Commit
信息,每一个人都有本身的见解,每一个团队也有本身的规定。这并无一个明确的标准,今天也不是来讨论标准,而是介绍一个相对优雅的方式。css
[ac7536f1f] update some files [cdc6708ad] change style [93d4b716d] remove css files [dfb928e85] update readme 复制代码
以前,我写提交信息的时候,只会写主题信息。可能这样写的弊端你们也看到了,以后会看这些message
的时候,并不知道这些提交究竟是什么功能的。甚至有偷懒的同窗可能会直接这么写 [52a9e19] Update
,能看懂这个commit message
是update
什么吗?可能在过段时间,这位同窗也不知道是提交的什么了。java
对于Git Commit Message
并明确的标准,但也有一些好的原则:webpack
本文开头的第一个代码片断是我以前提交的提交记录,如今来看的话,我已经不知道我写了什么?若是要知道到底提交了什么,涉及哪些功能,也只有借助版本工具了。git
提交信息和代码同样,不仅是给本身看,也是给团队中其余人看的,同时也是对提交信息的注释。在我过往经历中,看到过不少小伙伴为了方便随便写提交信息。修复一个登录问题,提交信息却只写了Fix bug
。这就致使了对于代码的回溯和问题排查十分困难,时间久了甚至只能一个一个Commit
的排查。要记住一点:提交信息不仅是给本身看的,也是给团队看的。web
使用编辑器
实现单点登录接口工具
替代实现新功能测试
有个小建议,你们能够在提交代码的时候,若是实在是想不到,能够直接使用需求描述做为提交信息。flex
先来对提交代码的缘由进行分类,大体能够分为几类:新功能、代码升级或变动、Bug修复、文档编写、主题UI变动和测试用例。提交代码的缘由不外乎就是这几种,因此如今给这些缘由相应加上一个标识,就变成了以下列表。url
使用
Feat:实现单点登录接口
替代实现单点登录接口
想象一下,若是一条提交信息有几十个甚至近百个字,是否是很累。做为一个能偷懒就偷懒的程序猿,固然不可能写这么长的提交信息的。只要在可以正确表达出本次提交所表明含义的状况下,字数尽可能少,最好不超过50个字符。
使用
Feat:实现单点登录接口
替代实现单点登录接口,并修改了Login.java...(此处省略100字)
篇幅缘由,错误示例就用省略号(…)来代替。能够看到绿色示例已经正确可以表达本次提交的主题了,因此彻底没有必要写这么多字。
描述是对提交信息的补充说明或详细描述,这部份内容不多有同窗会注意到。但有时候描述却也不可缺乏,好比说当合并代码存在冲突的时候,提交者就有必要将发生冲突的文件写在描述信息里面。
描述信息能够分为多行,能够在第72
个字符的地方进行换行。
使用
Upgrade: Update meta
Upgrade: Update meta
有人会说中文本就是母语,为何不建议使用中文。在团队开发中,使用中文可以表达的更清楚明白。且一个团队里面,并非全部的人英文都很好,若是要使用英文则须要保证你写的提交信息其余人也能看懂,不然就会拔苗助长了。
你们或多或少都使用过Windows
来进行开发,当使用过 cmd
来查看git log
的时候,中文是乱码的。这实在是太不友好,若是要正常显示还要一顿骚操做。这也就是为何建议尽可能使用英文了。
其实还有一个缘由,若是咱们写一个开源项目的话,提交到GitHub
上面就是面向全世界的开发者,那么提交信息使用英文就十分友好了(说不定项目就火了呢)。
若是要使用英文,那么就得注意一下提交的文本格式。英文的大小写和符号有无都会影响提交信息的美观。那咱们就要对英文格式作一些约束。
使用
Fix: Fix can't login bug
替代Fix:修复不能登陆的bug
文章持续更新,扫描下方二维码关注公众号第一时间阅读
本文首发于: https://baozi.fun/2020/07/10/write-elegant-commit-message
本文使用 mdnice 排版