DEV Community

Masato Ohba
Masato Ohba

Posted on

Lint only over changed files

The bigger your project gets, the longer time lint takes.

So the following task is quite useful since we basically want to run lint only over changed files.

# package.json
{
  "scripts": {
    "tslint": "git diff --name-only develop... | grep -E '\\.tsx?$' | xargs yarn tslint"
  }
}
Enter fullscreen mode Exit fullscreen mode

I'm referring tslint here, but the same is true of eslint, stylelint, and etc.

Discussion (3)

Collapse
gijovarghese profile image
Gijo Varghese

I use lint-staged. Works pretty well. I've also written an in-depth guide on NodeJS – Auto Lint & Format on Git Commit with Airbnb Styleguide

Collapse
earonesty profile image
earonesty

This works for any language and vcs (git, hg, etc).
Useful for projects where there is more than one language used.
Default config works with node, ruby, python, bash.
github.com/AtakamaLLC/lint-diffs

Collapse
elpdpt profile image
elpdpt

thank you