git支持emoji了!快来更换你的提交风格吧!

前言

本文[2]简要介绍了git代码提交的规范,以及使用emoji表情的方法和注意事项。

提交效果图

图1的右边向我们展示了提交时的emoji表情,是不是很有意思?

图1. 提交展示图

说明

  • git提交建议的文字描述来自alibaba的开源项目egg.js,git-commit规范;
  • 符号部分来自github里部分项目的emoji表情提交建议。

文字提交规范

commit一共由五部分组成,具体内容如下:

(1)type

提交 commit 的类型,包括以下几种:

  • feat: 新功能
  • fix: 修复问题
  • docs: 修改文档
  • style: 修改代码格式,不影响代码逻辑
  • refactor: 重构代码,理论上不影响现有功能
  • perf: 提升性能
  • test: 增加修改测试用例
  • chore: 修改工具相关(包括但不限于文档、代码生成等)
  • deps: 升级依赖

(2)scope

修改文件的范围, 包括但不限于:

  • doc
  • middleware
  • core
  • config
  • plugin

(3)subject

用一句话清楚的描述这次提交做了什么。

(4)body

补充 subject,适当增加原因、目的等相关因素,也可不写。

(5)footer

  • 当有非兼容修改(Breaking Change)时必须在这里描述清楚
  • 关联相关 issue,如 Closes #1, Closes #2, #3
  • 如果功能点有新增或修改的,还需要关联文档 doc .

加入emoji表情

有了emoji提交代码注释,预览信息就会十分形象生动。

获取emoji表情

那么,哪里能获取丰富的emoji表情呢?只要访问下面这个网站即可:

https://gitmoji.carloscuesta.me/

图2. 表情列表

如图2,该网站展示了所有的emoji表情。

值得注意的是,在每个emoji表情下面注明了规则和使用场景。比如图3,在提交时,只需要拼写:tada:,就能生成这样一个emoji表情。同时,在图片的下方写了:

“Begin a project”

表示新项目的开启。

图3. 新项目开始

而图4的锤子就表示增加或者更新了代码片段。

图4. 锤子

完整的使用例子如下:

1
git commit -m ":bug: fix a bug writtten by pig teammate"

这表示修复一个bug。

emoji表情对应举例

下面列举了部分,关于更全面的信息请参考上面给的网站。

emoji emoji代码 commit说明
🎨 (调色板) :art: 改进代码结构/代码格式
🚚(卡车) :truck: 移动或重命名文件
💩(大便) :poop: 写了很差的代码,后期需要改善
⚡️ (闪电) :zap: 提升性能
🐎 (赛马) :racehorse: 提升性能
🔥 (火焰) :fire: 移除代码或文件
🐛 (bug) :bug: 修复 bug
🚑 (急救车) :ambulance: 重要补丁
✨ (火花) :sparkles: 引入新功能
📝 (铅笔) :pencil: 撰写文档
🚀 (火箭) :rocket: 部署功能
💄 (口红) :lipstick: 更新 UI 和样式文件
🎉 (庆祝) :tada: 初次提交
✅ (白色复选框) :white_check_mark: 增加测试
🔒 (锁) :lock: 修复安全问题
🍎 (苹果) :apple: 修复 macOS 下的问题
🐧 (企鹅) :penguin: 修复 Linux 下的问题
🏁 (旗帜) :checked_flag: 修复 Windows 下的问题
🔖 (书签) :bookmark: 发行/版本标签
🚨 (警车灯) :rotating_light: 移除 linter 警告
🚧 (施工) :construction: 工作进行中
💚 (绿心) :green_heart: 修复 CI 构建问题
⬇️ (下降箭头) :arrow_down: 降级依赖
⬆️ (上升箭头) :arrow_up: 升级依赖
👷 (工人) :construction_worker: 添加 CI 构建系统
📈 (上升趋势图) :chart_with_upwards_trend: 添加分析或跟踪代码
🔨 (锤子) :hammer: 重大重构
➖ (减号) :heavy_minus_sign: 减少一个依赖
🐳 (鲸鱼) :whale: 相关工作
➕ (加号) :heavy_plus_sign: 增加一个依赖
🔧 (扳手) :wrench: 修改配置文件
🌐 (地球) :globe_with_meridians: 国际化与本地化
✏️ (铅笔) :pencil2: 修复 typo

另外,在README.md文件里也可以使用Emoji表情哦,最后希望提交代码的时候,不要都是大便💩哈。

参考资料

[1] Git提交代码时emoji表情的建议

[2] git commit 时使用 Emoji ?