这是我参与更文挑战的第5天,活动详情查看: 更文挑战javascript
本文已参与 周末学习计划,点击查看详情。css
正如上一篇博客说的,以前有同事老是喜欢格式化代码后提交,凡是他更改过的文件,哪怕只有1行,整个文件也会被他格式化。回头再看git提交记录,好家伙,历史commit全被覆盖了~前端
再看看以前某个小项目的git提交记录:java
小老弟,这满屏的1是怎么回事?git
看到这里,你可能觉得这是小公司不规范的提交记录,实际上这并非仅仅是小公司的问题。若是团队负责人没有作好规范,同事水平参差不齐,无论大公司仍是小公司,都会有这样的问题。从这点来看,团队中git提交规范是颇有必要的,那么git提交都应该注意哪些问题呢?今天,大冰块就来好好理一下git提交那点事儿~程序员
主流的提交规范通常包括:标题(类型、精简总结)、内容、备注 。其中精简总结 是必填的,类型 最好也填一下,其他都是选填。web
下面大冰块来见到那介绍一下这三个方面具体都指的是什么:npm
标题分为 类型 、 改动范围 、 精简总结 三部分:api
规范的主要类型以下:性能优化
其实实际开发中最经常使用的就是 feat、fix 和 perf,git提交基本上都是实现需求,更改bug,性能优化。除了上述这些主要类型,咱们也能够根据团队要求定制类型,毕竟规范是死的,人是活的嘛。好比为了你们更易读,咱们只留几个经常使用的,而且全改为中文,如:
没有好与很差之分,适合团队的就是最好的!
当项目划分为好几个模块的时候,指定改动的模块是颇有必要的事情,这样在git提交记录中,很容易看出提交者更改的是哪一个模块。好比本次修改了compiler(编译器)模块,下次修改了 router(路由)模块,一目了然。如:
必填的精简总结是很是重要的,通常是是总结归纳的文字。要让人一眼就能看出来主要提交了什么,是添加了功能仍是解决了问题,同时它也是大多数git管理工具默认展现的一行。若是你写的标准,那么提交记录看起来就很漂亮很规整。例如:
fix: 修复了无限抽奖的bug
复制代码
内容主要填写详细的改动内容,可换行。固然,没必要像写一篇小做文似的长篇大论,毕竟咱们程序员的时间仍是很宝贵的。若是精简总结写的比较完美,内容不写也是不要紧的。不过若是更改确实不少,而且时间充裕的话,把本次提交内容的实现、需求以及背景都填写,是很负责的作法。好比:
fix: 修复了无限抽奖的bug
在网络很差时,屡次抽奖的接口能够被重复调用。
这次更改了抽奖接口的逻辑断定,在并发请求中……采用了……因此……。
复制代码
备注看起来并非那么重要,主要做用就是有一些额外的hook补充,好比提交记录以后,自动触发代码联动编译,或者自动生成git提交的通知。
规范了团队的git提交,commit log记录一目了然,配合自动化集成工具便可自动生成git change log。以及调用邮箱接口提示,自动发送提交、构建、发版的人员记录,因此团队管理的git的提交规范是颇有必要的,甚至是不可或缺的一部分。
本文旨在提供git规范化提交的思路,提早发现问题,解决问题,不至于在翻看git记录时一脸懵。若是对你有帮助,点个赞就好,若是有错误欢迎指出交流。感谢阅读~
PS: 今天是参加掘金更文挑战的第5天啦,没有存稿的我,周六依然战战兢兢的努力更文,不知道何时才能一小时搞定一篇博客呢?
虽然没多少人看,也仍是给本身引引流吧~ 更文挑战的文章目录以下: