你好,我是小桔,是一个没有感情的代码崽。
今天给大家介绍一下 Git Hooks,相信 Git 大家都在用吧,Git 除了用作版本控制,还有许多高级功能,Git Hooks 就是其中之一。本文环境:Git 版本:2.27.0
Husky 版本:4.2.5
Node.js 版本:12.16.2
前言
做过前端的同学对 Hook 这个东西应该很了解吧,后端也是有 Hook 这种概念的,比如 Java 的@PostConstruct,也是一种 Hook 的体现。简单来说,Hook 就是在执行某个事件之前或之后进行一些其他额外的操作。
举个栗子,张三现在要吃饭,那么吃饭就是一个事件,吃饭前和吃饭后就可以称为两个钩子。现在你想让张三在吃饭前洗下手,那么我们就可以在吃饭前这个钩子这里,设置一个洗手的动作。张三在每次吃饭前,都会检查一下这个钩子,有什么要做的,都会照做。这样,就实现了我们的需求。
Git 也是如此,在 Git 中也有许多的事件(commit、push 等等),每个事件也是对应了有不同的钩子的(如 commit 前,commit 后),那么我们就可以在这些钩子这里配置一些自己需要执行的操作来实现各种各样的需求。
使用
真实场景
可能初次了解 Git Hooks 的同学会有一些疑问:这个东西到底能干嘛?我以前没用过它不也一样好好的吗?我干嘛要用它?
其实这说得很对,**任何技术都是有需求采用,没有需求就别去硬塞,永远记住ÿ