chore: move commit-lint to cli

This commit is contained in:
陈嘉涵
2019-08-22 14:01:53 +08:00
parent bcc6868c06
commit fc111cdfc7
6 changed files with 32 additions and 13 deletions

View File

@@ -0,0 +1,38 @@
const fs = require('fs');
const signale = require('signale');
const commitRE = /^(revert: )?(fix|feat|docs|perf|test|types|build|chore|refactor|breaking change)(\(.+\))?: .{1,50}/;
function commitLint() {
const gitParams = process.env.HUSKY_GIT_PARAMS;
const commitMsg = fs.readFileSync(gitParams, 'utf-8').trim();
if (!commitRE.test(commitMsg)) {
signale.error(`Error: invalid commit message format.
Proper commit message format is required for automated changelog generation.
Examples:
- fix(Button): incorrect style
- feat(Button): incorrect style
- docs(Button): fix typo
Allowed Types:
- fix
- feat
- docs
- perf
- test
- types
- build
- chore
- refactor
- breaking change
`);
process.exit(1);
}
}
module.exports = commitLint;

View File

@@ -2,10 +2,15 @@
const commander = require('commander');
const changelog = require('./changelog');
const commitLint = require('./commit-lint');
commander
.command('changelog <dir>')
.option('--tag [tag]', 'Since tag')
.action(changelog);
commander
.command('commit-lint')
.action(commitLint);
commander.parse(process.argv);