# git-commitlint **Repository Path**: xisobreaker/git-commitlint ## Basic Information - **Project Name**: git-commitlint - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-03 - **Last Updated**: 2025-09-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: Git ## README # Git 版本管理工具 约定式提交规范(Conventional Commits) ## 项目初始化 初始化项目,生成 package.json 文件 ```bash npm init -y ``` ## NPM 包安装 ```bash # 安装 commitlint + commitzen npm i -D commitizen @commitlint/config-conventional @commitlint/cz-commitlint # 安装 husky npm i -D husky @commitlint/cli # 安装 standard-version npm i -D standard-version ``` #### @commitlint/cz-commitlint [https://mhx.be/blog/conventional-commits#commitlintcz-commitlint](https://mhx.be/blog/conventional-commits#commitlintcz-commitlint) Commitizen adapter, makes commitizen use `commitlint.config.js` or `.commitlintrc.json` for configuration. 如果是 `.commitlintrc.json` 文件,加入以下内容: ```json { "extends": ["@commitlint/config-conventional"] } ``` 此处使用 commitlint.config.js,详情查看文件内容 新建 .czrc 文件,并填写入以下内容 ```json { "path": "@commitlint/cz-commitlint" } ``` 也可以在 package.json 文件加入如下内容 ```json ... "config": { "commitizen": { "path": "@commitlint/cz-commitlint" } } ... ``` 修改 package.json 文件,添加 commit 脚本功能,如下所示: ```json ... "scripts": { "commit": "cz", }, ... ``` 之后即可运行 npm run commit 命令进行代码提交 #### husky husky 初始化 方法一: 运行如下命令 ```bash npx husky ``` 创建 .husky/commit-msg,并添加如下内容 `npx commitlint --edit $1` ```bash echo "npx --no -- commitlint --edit \$1" > .husky/commit-msg ``` 方法二: 在 package.json 的 scripts 内加入 parpare,之后运行 npm rum prepare 进行初始化 ```json ... "scripts": { "commit": "cz", "prepare": "husky" }, ... ``` #### standard-version 在 package.json 的 scripts 内加入如下命令 ```json ... "scripts": { "commit": "cz", "prepare": "husky", "release": "standard-version", "release-major": "standard-version --release-as major", "release-minor": "standard-version --release-as minor", "release-patch": "standard-version --release-as patch" }, ... ``` ## 静态分析 通常命令 ```bash cppcheck --enable=all src/ ``` #### cmake 中使用 ```bash # 生成 compile_commands.json cmake .. -DCMAKE_EXPORT_COMPILE_COMMANDS=ON # 执行静态分析 cppcheck --project=compile_commands.json # 生成 xml 分析文档 cppcheck --project=compile_commands.json --xml --output-file=report.xml # 生成 html 文档 cppcheck-htmlreport --file=report.xml --report-dir=htmlreport ```