在git中实施提交消息格式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在git中实施提交消息格式相关的知识,希望对你有一定的参考价值。
我怎样才能在git中强制执行提交消息格式。可以将其设置在存储库级别,以便创建分支的每个人都可以执行此操作。
正如Git ProBook“Customizing Git - An Example Git-Enforced Policy”中所描述的那样,这样的强制执行将通过一个钩子来设置,更具体地说,是像update
那样的服务器端钩子:
所有服务器端的工作都将进入hooks目录中的
update
文件。每个分支被推送时update
钩子运行一次,并带有三个参数:
- 要推送的引用的名称
- 该分支所在的旧版本
- 推出了新的修订版
这比客户端钩子(如pre-commit
)更受欢迎:
- 必须由每个用户手动设置
- 可以被绕过
对于给定的存储库,服务器端挂钩将通过拒绝git push来强制执行您想要的任何规则(如果您的策略未得到遵守)。
这假设您可以控制用户正在推送的远程repo托管服务器。
如果不这样做,则返回客户端预提交挂钩,可以通过git模板whose template directory can be shared amongst all users (starting with git 2.9, June 2016)进行设置。
服务器端Git挂钩是您的解决方案,但也有设置和维护挂钩(通常也是服务器)的开销。
如果您正在寻找SaaS解决方案(用于服务器端Git挂钩) - 这正是Datree *可以为您做的。
*免责声明:我是@ Datree的联合创始人兼产品负责人,但作为一名活跃的开源贡献者,我非常精通这种痛苦。我还写了一篇关于这个问题的博客文章 - How to Get More Out of Your Git Commit Message
以上是关于在git中实施提交消息格式的主要内容,如果未能解决你的问题,请参考以下文章
如何自定义 git rebase --interactive 提交消息的格式?
云构建触发器不应基于 git commit 消息创建 docker 映像