Package Exports
- git-commit-msg-linter
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (git-commit-msg-linter) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
git-commit-msg-linter
Watching your every git commit message. 👀

Install
npm install git-commit-msg-linter --save-devWhat's this
It's a git "commit-msg" hook for linting your git commit message against the Google AngularJS Git Commit Message Conventions. As a hook it will run at every commiting to make sure your every commit message is valid against the conventions. If not your commit will be aborted.
The repo is heavily influenced by pre-commit. Thanks.
Why yet a new linter
- No simpler git commit message hook ever exists right now.
- It's very important to follow certain git commit message conventions and we recommend Google's.
Recommended commit message pattern
<type>(<scope>): <subject>
# scope optionalcommitlinterrc.json
Default types including feat, fix, docs, style, refactor, test, chore, perf, ci and temp. But we can add, overwrite or forbid certain types.
For example if you have the commitlinterrc.json below in your project root directory:
{
"types": {
"feat": "new feature to the user",
"build": "changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)",
"deps": "upgrade dependency",
"temp": false,
"chore": false
}
}Which means:
- Modify existing type
feat's description to "new feature to the user". - Add two new types:
buildanddeps. tempare not allowed andchoreare forbidden asbuildhas the same meaning.
TODO
- Existing rule can be overwritten and new ones can be added through
commitlinterrc.json. -
is-english-onlyshould be configurable throughcommitlinterrc.json, defaultfalse. -
max-lengthshould be configurable throughcommitlinterrc.json, default100. - First letter of
subjectmust be a lowercase one. -
subjectmust not end with dot. - Empty
scopeparenthesis not allowed. -
scopeparenthesis must be of English which means full-width ones are not allowed. - Keep a space between Chinese and English character.
Notice
git submodules not tested yet.