Run linters on committed files of a GIT Branch🔬
This package will run linters on your project for the committed files in your branch.
It require Node.js v6 or newer. It also requires a package to manage git hooks. I strongly suggest Husky which I use for most of my projects.
// package.json
{
"husky": {
"hooks": {
"pre-commit": "npm test",
"pre-push": "npm test",
"...": "..."
}
}
}
- This project requires a package to manage git hooks depending.
- I strongly suggest Husky which pauses the git push by overriding pre-commit hook (it almost overrides all hooks, here we need only pre-push hook) and allow us to run our custom scripts and resumes pushing.
npm install --save-dev husky lint-prepush
or using yarn
:
yarn add --dev husky lint-prepush
Configure the following scripts in package.json to lint your committed files 🔧. You can also follow any of the cosmiconfig methods to configure lint-prepush.
{
"scripts": {
+ "prepush": "lint-prepush"
},
+ "lint-prepush": {
+ "base": "master",
+ "tasks": {
+ "*.js": [
+ "eslint"
+ ]
+ }
+ }
}
The above scrips will lint the js files while pushing to git. It will terminate the process if there are any errors, otherwise, the changes will be pushed.
- If you have any ideas, just open an issue and tell me what you think.
- Pull requests are warmly welcome, If you would like to contribute to this Project.
We use SemVer for versioning. For the versions available, see the tags on this repository.
- Theena Dayalan - Owner - website
See also the list of contributors who participated in this project.
- Inspired from lint-staged by Andrey Okonetchnikov
MIT @ Theena Dayalan