Skip to content
ParkSeungHwan edited this page Nov 25, 2020 · 1 revision

git hooks

git ์—๋Š” hooks ๋ผ๋Š” ๊ฐœ๋…์ด ์กด์žฌํ•œ๋‹ค.

git hooks๋Š” git์— ๊ด€๋ จ๋œ ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒ ํ•˜๊ฑฐ๋‚˜ ํ•˜๋ ค ํ•  ๋•Œ, ์‚ฌ์šฉ์ž๊ฐ€ ํ•„์š”ํ•œ ์กฐ์ž‘์„ ์Šคํฌ๋ฆฝํŠธ๋กœ ์ž‘์„ฑํ•˜์—ฌ ์ถ”๊ฐ€ ํ•  ์ˆ˜ ์žˆ๋‹ค.

ex) pre-commit - ์ปค๋ฐ‹ ์ „์— ๋ฐœ์ƒ.

git hooks ๋ฌธ์ œ

ํŒ€์—์„œ git hooks ์— ์‚ฌ์šฉํ•˜๋Š” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋™๊ธฐํ™” ํ•˜๊ธฐ ์œ„ํ•ด์„œ

  • ์ง์ ‘ ์Šคํฌ๋ฆฝํŠธ ๊ณต์œ 

    โ†’ git ์ด์™ธ์— ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋ฐ›์•„ ์™€์„œ .git/hooks์— ๋„ฃ์–ด ์ค˜์•ผ ๋จ.

  • git template ๊ณต์œ 

    โ†’ template๋ฅผ ์„ธํŒ… ํ•˜๋Š” ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ํ•˜๊ฑฐ๋‚˜ ์ˆ˜๋™์œผ๋กœ ๋„ฃ์–ด ์ฃผ์–ด์•ผ ํ•จ.

โ‡’ ๋ฒˆ๊ฑฐ๋Ÿฌ์›€ + ์‹ค์ˆ˜๋กœ ์ด ๊ณผ์ •์„ ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ hooks๋ฅผ ์ ์šฉ ํ•  ์ˆ˜ ์—†์Œ.

husky ๋™์ž‘

husky๋ฅผ ์„ค์น˜ ์‹œ .git/hooks ์— husky.sh ๊ฐ€ ์„ค์น˜ ๋œ ๊ฒƒ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ์Œ.

๊นƒ ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•  ๋•Œ, ์ด ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ํ•˜๋ฉฐ, husky.sh ๋Š” package.json or .huskyrc์— ์ •์˜ ๋œ ๋‚ด์šฉ์œผ๋กœ ์‹คํ–‰ํ•œ๋‹ค.

์ ์šฉํ•˜๊ธฐ

์ €ํฌ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” husky + lint-saged ์กฐํ•ฉ์œผ๋กœ ์ปค๋ฐ‹ ์ „์— prettier, eslint ๊ฒ€์‚ฌ๋ฅผ ํ•˜๊ฒŒ ํ•˜์—ฌ

์ฝ”๋”ฉ ์ปจ๋ฒค์…˜์„ ๋งž์ถ”๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ์„ ํ•˜์˜€๋‹ค.

"husky": {
    "hooks": {
      "pre-commit": "lint-staged"
    }
  },
  "lint-staged": {
    "*.{js,jsx,tsx,ts}": [
      "prettier --write",
      "eslint --fix"
    ]
  },

๐Ÿ“Œ Project

๐Ÿค Rules

๐Ÿ“š Documents

๐Ÿข๊ตฌ์กฐ

๐Ÿง๋…ผ์˜

โšฝ๏ธ TroubleShooting

๐Ÿ’ฌ Memoirs

1 ์ฃผ์ฐจ
2 ์ฃผ์ฐจ
3 ์ฃผ์ฐจ
4 ์ฃผ์ฐจ
5 ์ฃผ์ฐจ

๐Ÿ“ ํ”ผ์–ด์„ธ์…˜

<2์ฃผ์ฐจ> 24๊ทธ๋ฃน 25๊ทธ๋ฃน

<3์ฃผ์ฐจ> 24๊ทธ๋ฃน 25๊ทธ๋ฃน

<4์ฃผ์ฐจ> 24๊ทธ๋ฃน 25๊ทธ๋ฃน 26๊ทธ๋ฃน 27๊ทธ๋ฃน

Clone this wiki locally