终端和 VS Code 中的 Git 提交消息模板
最近我一直在尝试写出更好的提交信息。由于我患有注意力缺陷多动症,我的座右铭就是“把事情写下来”,所以当同事告诉我 git 提交信息模板时,我非常高兴。
首先,我提炼出我想在每条消息中包含的内容:
- 传统的提交类型
- 描述性标题
- 描述什么和为什么的主体
- 发行编号
我还喜欢Lisa 模板的换行功能,在 git 终止该行之前,她在最后一个有效列中放置了一个 octothorpe。
基于此,我.gitmessage
在我的主目录中创建了一个文件:
<type>: <title>
# No more than 50 chars. #### 50 chars is here: #
<body>
# Wrap at 72 chars. ################################## which is here: #
Issue #
然后我跑了
git config --global commit.template ~/.gitmessage
如果您想在终端中用一行代码完成所有操作,您可以运行:
printf "<type>: <title>\n# No more than 50 chars. #### 50 chars is here: #\n\n<body>\n# Wrap at 72 chars. ################################## which is here: #\n\nIssue #" > ~/.gitmessage && git config --global commit.template ~/.gitmessage
如果需要,您可以--global
从命令中移除该标志,并为每个仓库创建不同的 git 提交消息模板。如果文件路径.gitmessage
不是绝对路径,则将被视为相对于仓库根目录的路径。
git commit
如果我通常在终端中运行,这一切都很好用。我习惯在提交时使用VS Code 的源代码控制面板,而消息模板中注释掉的提示不会在那里显示。我完全可以在我的代码中使用别名.zshrc
,例如:
alias commit="git add . && git commit && git push && git pull"
……不过我已经越来越喜欢那个小小的提交勾了。结果,我发现了两个提交信息扩展选项。
提交消息编辑器在VS Code 中拥有清晰的用户界面和说明。点击源代码控制面板中的铅笔图标后,您可以选择传统的 Git 消息模板样式或表单样式。
VS Code Git 提交编辑器有一个外部 UI,可帮助您配置设置,并提供大量选项,对于寻求更多自动化功能的用户来说很有吸引力。为了启动并运行类似的模板,我必须将以下代码添加到我的settings.json
.
{
...
"vscodeGitCommit.template": [
"{type}: {title}\n\n{body}\n\nIssue #{issue}"
]
}
然后,如果您单击源控制面板中的聊天图标,系统将提示您输入该字符串中花括号内的任何内容的值。
太棒了!我最终选择了提交消息编辑器,因为我想要注释掉的提示,现在我在终端和文本编辑器里都能找到答案了。
鏂囩珷鏉ユ簮锛�https://dev.to/abbeyperini/git-commit-message-template-in-terminal-and-vs-code-326p