Skip to content

Comparison with other solutions

Abroskin Alexander edited this page Jul 11, 2019 · 2 revisions

Comprasion with Lefthook

Husky

  • Can`t run commands in parallel
  • Can`t run several commands without bash syntax
  • Can`t customize list of files for commands
  • Can`t filter files
  • Littering .git/hooks directory with a lot of unnecessary files
  • Have 30 direct dependencies
  • Require Node.js to operate

You can solve most of problems with additional packages. For example with lint-staged. But even with that your solution was limited.

Husky + lint-staged

  • Can`t customize list of files for commands(works only with stashed files)
  • In general works only with pre-commit hook
  • Littering .git/hooks directory with a lot of unnecesary files
  • Have 80 direct dependecies
  • Require Node.js to operate

Overcommit

  • Not flexible, using prebuilded hooks
  • 20% slower in parallel execution
  • Can`t customize list of files for commands
  • Can`t filter files
  • Littering .git/hooks directory with a lot of unnecesary files
  • Have 2 direct dependecies
  • Require Ruby to operate
  • Change default output from commands

pre-commit

  • Require python runtime
  • Verbose config
  • Not very clear documentation
  • Slow(3x)
  • Breaks original output from commands

More info

Have a qustions? Check the wiki.

You can’t perform that action at this time.