PHP Commitizen 使用教程
项目介绍
PHP Commitizen 是一个 CLI 工具,用于根据 Conventional Commits 规范创建提交,以保持 Git 历史的清晰和可读性。该项目遵循 Conventional Commits 规范,并提供了一些最佳实践,帮助开发者创建结构化的提交信息。
项目快速启动
安装
你可以通过 Composer 轻松安装 PHP Commitizen:
$ php composer.phar require --dev damianopetrungaro/php-commitizen
使用
使用 PHP Commitizen 创建提交非常简单:
$ php vendor/bin/php-commitizen commit
你还可以通过 -a
标志将所有文件添加到暂存区,并指定自定义配置文件的路径作为参数。获取更多信息可以使用:
$ php vendor/bin/php-commitizen commit --help
配置文件
配置文件必须返回一个数组(或部分覆盖):
<?php
return [
'type' => [
'lengthMin' => 1, // 类型最小长度
'lengthMax' => 5, // 类型最大长度
'acceptExtra' => false, // 是否允许添加未列在 'values' 键中的类型
'values' => ['feat', 'fix'] // 可用的类型值
],
// 其他配置项...
];
应用案例和最佳实践
应用案例
PHP Commitizen 适用于需要维护清晰 Git 历史的任何项目。例如,在一个大型团队项目中,使用 PHP Commitizen 可以帮助团队成员创建一致的提交信息,从而更容易追踪变更和理解代码历史。
最佳实践
- 始终使用描述性类型:确保提交类型(如
feat
、fix
等)清晰且具有描述性。 - 保持描述简洁:提交描述应简洁明了,避免冗长的解释。
- 使用主体和页脚:对于复杂的变更,使用提交主体和页脚来提供更多上下文信息。
典型生态项目
PHP Commitizen 可以与其他遵循 Conventional Commits 规范的项目和工具集成,例如:
- Commitlint:用于检查提交信息是否符合 Conventional Commits 规范。
- Semantic Release:自动管理版本发布和 CHANGELOG 生成。
- Husky:Git 钩子工具,可以在提交前运行脚本,确保提交信息符合规范。
通过这些工具的集成,可以进一步提高项目的可维护性和可读性。