当前位置: 首页 > 工具软件 > Emoji-Log > 使用案例 >

git提交emoji_Emoji-Log:一种编写Git提交消息的新方法

巫马盛
2023-12-01

git提交emoji

我是一个全职的开源开发人员,或者,我喜欢称呼它为open sourcerer。 我从事开源软件开发已有十多年了,并构建了数百个开源软件应用程序。

我也是“不要重复自己做”(DRY)理念的忠实拥护者,并且相信编写更好的Git提交消息(足够上下文相关的消息,可以用作您的开源软件的变更日志)是DRY的重要组成部分。 我编写的众多工作流程之一是Emoji-Log ,这是一种简单,开放源代码的Git提交日志标准。 通过使用表情符号创建更好的Git提交消息,它改善了开发人员的体验(DX)。

我在构建VSCode提示和技巧仓库,我的濾Shades of Purple VSCode主题仓库以及甚至看起来很漂亮的自动 变更日志时使用了Emoji-Log。

Emoji-Log的理念

我喜欢表情符号(实际上是表情符号的复数形式)。 我非常喜欢他们。 编程,代码,怪胎/书呆子,开源……所有这些天生就是枯燥的,有时很无聊。 表情符号可以帮助我增加色彩和情感。 希望将感觉附加到基于文本的2D扁平文本世界中没有错。

与其记住数百个表情符号 ,不如说最好将类别保持较小和笼统。 这是指导使用Emoji-Log编写提交消息的原理:

  1. 势在必行
    • 使您的Git提交消息势在必行。
    • 像下订单一样写提交消息。
      • 例如,使用✅ 添加而不是❌ 添加
      • 例如,使用✅ 创建而不是❌ 创建
  2. 规则
    • 少数类别很容易记住。
    • 仅此而已
      • 例如: 新增改进修复DOC发布✅测试
  3. 动作
    • 根据您执行的操作使Git提交。
    • 使用像VSCode这样的优质编辑器来提交带有提交消息的正确文件。

编写提交消息

仅使用以下Git提交消息。 简单且占用空间小是Emoji-Logo的关键。

  1. 新功能:IMPERATIVE_MESSAGE
    • 当您添加全新的内容时使用。
      • 例如, 新:添加Git忽略文件
  2. 改善:IMPERATIVE_MESSAGE
    • 当您改进/增强诸如重构等代码段时使用。
      • 例如, IMPROVE:远程IP API功能
  3. FIX:IMPERATIVE_MESSAGE
    • 修复错误时使用。 需要我多说?
      • 例如, FIX:案例转换器
  4. DOC:IMPERATIVE_MESSAGE
    • 在添加文档(例如README.md甚至是内联文档)时使用。
      • 例如, DOC:API接口教程
  5. 发布:IMPERATIVE_MESSAGE
    • 发布新版本时使用。 例如, 发布:2.0.0版
  6. ✅测试:IMPERATIVE_MESSAGE
    • 发布新版本时使用。
      • 例如, ✅测试:模拟用户登录/注销

现在就这样。 仅此而已。

表情符号日志功能

为了快速制作原型,我做了以下功能,您可以将其添加到.bashrc / .zshrc文件中,以快速使用Emoji-Log。


   
   
#.# Better Git Logs.
### Using EMOJI-LOG (https://github.com/ahmadawais/Emoji-Log).

# Git Commit, Add all and Push — in one step.
function gcap ( ) {
    git add . && git commit -m "$*" && git push
}

# NEW.
function gnew ( ) {
    gcap " NEW: $@"
}

# IMPROVE.
function gimp ( ) {
    gcap " IMPROVE: $@"
}

# FIX.
function gfix ( ) {
    gcap " FIX: $@"
}

# RELEASE.
function grlz ( ) {
    gcap " RELEASE: $@"
}

# DOC.
function gdoc ( ) {
    gcap " DOC: $@"
}

# TEST.
function gtst ( ) {
    gcap "✅ TEST: $@"
}

要为fish shell安装这些功能,请运行以下命令:


   
   
function gcap; git add .; and git commit -m " $argv " ; and git push ; end;
function gnew; gcap " NEW: $argv " ; end
function gimp ; gcap " IMPROVE: $argv " ; end;
function gfix; gcap " FIX: $argv " ; end;
function grlz; gcap " RELEASE: $argv " ; end;
function gdoc; gcap " DOC: $argv " ; end;
function gtst; gcap "✅ TEST: $argv " ; end;
funcsave gcap
funcsave gnew
funcsave gimp
funcsave gfix
funcsave grlz
funcsave gdoc
funcsave gtst

如果愿意,可以将这些别名直接粘贴到〜/ .gitconfig文件中:


   
   
# Git Commit, Add all and Push — in one step.
cap = "!f() { git add .; git commit -m \" $@ \" ; git push; }; f"

# NEW.
new = "!f() { git cap \"  NEW: $@ \" ; }; f"
# IMPROVE.
imp = "!f() { git cap \"  IMPROVE: $@ \" ; }; f"
# FIX.
fix = "!f() { git cap \"  FIX: $@ \" ; }; f"
# RELEASE.
rlz = "!f() { git cap \"  RELEASE: $@ \" ; }; f"
# DOC.
doc = "!f() { git cap \"  DOC: $@ \" ; }; f"
# TEST.
tst = "!f() { git cap \" ✅ TEST: $@ \" ; }; f"

表情符号日志示例

这是使用Emoji-Log的仓库的列表。

翻译自: https://opensource.com/article/19/2/emoji-log-git-commit-messages

git提交emoji

 类似资料: