f401e6d2c0cc0cd46b539d92656c5c0bb03172da93770b6082a2c4ca08a0770bfe967c39a999e6a09a719ca8137f379d887b845bcbbbf871dfacfe946aee07 480 B

1234567891011121314151617181920212223
  1. const fs = require('fs')
  2. const path = require('path')
  3. const execa = require('execa')
  4. const cwd = process.cwd()
  5. const pkg = fs.readFileSync(path.join(cwd, 'package.json'))
  6. const hooks = JSON.parse(pkg).gitHooks
  7. if (!hooks) {
  8. process.exit(0)
  9. }
  10. const hook = process.argv[2]
  11. const command = hooks[hook]
  12. if (!command) {
  13. process.exit(0)
  14. }
  15. console.log(` > running ${hook} hook: ${command}`)
  16. try {
  17. execa.shellSync(command, { stdio: 'inherit' })
  18. } catch (e) {
  19. process.exit(1)
  20. }