lefthook git hooks 管理器

lefthook 是基于golang 开发的一个git hook 管理工具,支持任何语言,使用上通过yaml配置文件

参考使用

流程,安装工具,配置lefthook.yml 安装到git 项目,进行git 提交操作

  • npm 项目
{
  "name": "lefthook-demo",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "devDependencies": {
    "lefthook": "^1.11.13"
  }
}
  • 配置文件 .lefthook.yml
 pre-commit:
  parallel: true
  jobs:
    - run: yarn run stylelint --fix {staged_files}
      glob: "*.css"
      stage_fixed: true

    - run: yarn run eslint --fix "{staged_files}"
      glob:
        - "*.ts"
        - "*.js"
        - "*.tsx"
        - "*.jsx"
      stage_fixed: true
  • 安装hooks
./node_modules/.bin/lefthook run pre-commit 
  • 使用
git add --all
git commit -m "demo"
  • 效果

说明

当然python 有一个pre-commit 也是一个强大的工具,目前有不少开源项目有使用到lefthook , 比如dbt 的semantic-layer-sdk-python

参考资料

https://github.com/evilmartians/lefthook

http://lefthook.dev/

https://lefthook.dev/usage/index.html

https://pre-commit.com/

https://github.com/pre-commit/pre-commit

https://github.com/dbt-labs/semantic-layer-sdk-python.git

posted on 2025-07-12 08:00  荣锋亮  阅读(102)  评论(0)    收藏  举报

导航