--- id: P-REINFORCE-AUTO-5397E2 category: "10_Wiki/๐Ÿ’ก Topics/Programming & Language" confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - Turborepo ๊ธฐ๋ฐ˜ ๋ชจ๋…ธ๋ ˆํฌ ์›Œํฌํ”Œ๋กœ์šฐ" --- # [[Turborepo แ„€แ…ตแ„‡แ…กแ†ซ แ„†แ…ฉแ„‚แ…ฉแ„…แ…ฆแ„‘แ…ฉ แ„‹แ…ฏแ„แ…ณแ„‘แ…ณแ†ฏแ„…แ…ฉแ„‹แ…ฎ|Turborepo ๊ธฐ๋ฐ˜ ๋ชจ๋…ธ๋ ˆํฌ ์›Œํฌํ”Œ๋กœ์šฐ]] ## ๐Ÿ“Œ ํ•œ ์ค„ ํ†ต์ฐฐ (The Karpathy Summary) > Turborepo ๊ธฐ๋ฐ˜ ๋ชจ๋…ธ๋ ˆํฌ ์›Œํฌํ”Œ๋กœ์šฐ๋Š” ์—ฌ๋Ÿฌ ํŒจํ‚ค์ง€์™€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋‹จ์ผ ์ €์žฅ์†Œ์—์„œ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๋ฆฐํŒ…(ESLint) ๋ฐ ํฌ๋งคํŒ…(Prettier) ์„ค์ •์˜ ์ค‘๋ณต์„ ์ค„์ด๊ณ  ์‹คํ–‰ ์†๋„๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค์ž…๋‹ˆ๋‹ค [1], [2], [3]. ์ค‘์•™ ์ง‘์ค‘์‹ ์„ค์ • ํŒจํ‚ค์ง€์™€ ๋ฃจํŠธ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜(Root Orchestration) ๊ตฌ์„ฑ์„ ํ™œ์šฉํ•ด ๊ฐ ํŒจํ‚ค์ง€์˜ ์ž์œจ์„ฑ์„ ๋ณด์žฅํ•˜๋ฉด์„œ๋„ ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ์— ๋Œ€ํ•œ ๋ถ€๋ถ„ ๊ฒ€์‚ฌ์™€ Turborepo์˜ ์บ์‹ฑ ์ด์ ์„ ๊ทน๋Œ€ํ™”ํ•ฉ๋‹ˆ๋‹ค [4], [5], [6]. ## ๐Ÿ“– ๊ตฌ์กฐํ™”๋œ ์ง€์‹ (Synthesized Content) - **๊ธฐ์กด ๋ชจ๋…ธ๋ ˆํฌ ํ™˜๊ฒฝ์˜ ํ•œ๊ณ„:** ์—ฌ๋Ÿฌ Next.js ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๊ณต์œ  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํฌํ•จํ•˜๋Š” ๋Œ€๊ทœ๋ชจ ๋ชจ๋…ธ๋ ˆํฌ์—์„œ๋Š” ํŒจํ‚ค์ง€๋งˆ๋‹ค `.eslintrc.json` ๋ฐ ๊ด€๋ จ ์„ค์ • ํŒŒ์ผ์ด ์ค‘๋ณต๋˜๋Š” ์œ ์ง€๋ณด์ˆ˜ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค [7]. ํŠนํžˆ ๋ชจ๋…ธ๋ ˆํฌ ๋ฃจํŠธ(Root) ๋ ˆ๋ฒจ์—์„œ `lint-staged`๋ฅผ ์‹คํ–‰ํ•  ๋•Œ, ๊ฐ ํŒจํ‚ค์ง€์— ๋งž๋Š” ๋ฆฐํŒ… ๊ทœ์น™์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ์กด์ค‘ํ•˜๋„๋ก ๊ตฌ์„ฑํ•˜๋Š” ๊ฒƒ์ด ๋งค์šฐ ๊นŒ๋‹ค๋กญ์Šต๋‹ˆ๋‹ค [7]. - **์ค‘์•™ ์ง‘์ค‘์‹ ์„ค์ • ํŒจํ‚ค์ง€ ๋„์ž…:** ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด `@repo/eslint-config`์™€ ๊ฐ™์€ ๊ณตํ†ต ๋‚ด๋ถ€ ํŒจํ‚ค์ง€๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๊ธฐ๋ณธ(Base), Next.js, ๋น„-React ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์šฉ ํ”„๋ฆฌ์…‹(Preset) ๊ตฌ์„ฑ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค [8]. ๊ฐ ํŒจํ‚ค์ง€๋Š” ์ด ํ”„๋ฆฌ์…‹์„ ์ž„ํฌํŠธํ•˜์—ฌ ๋‹จ์ผ ์ง„์‹ค ๊ณต๊ธ‰์›(Single source of truth)์„ ๋”ฐ๋ฅด๋Š” ๋™์‹œ์—, ํ•„์š”์‹œ ํŒจํ‚ค์ง€๋ณ„ ์ž์œจ์ ์ธ ์˜ค๋ฒ„๋ผ์ด๋“œ(override)๋ฅผ ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [4]. - **๋ฃจํŠธ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ์„ค์ • (Root Orchestration Config):** ๋ชจ๋…ธ๋ ˆํฌ ๋ฃจํŠธ์— ์œ„์น˜ํ•œ `eslint.config.mjs` ํŒŒ์ผ์—์„œ ๊ธ€๋กœ๋ธŒ(glob) ํŒŒ์ผ ํŒจํ„ด์„ ๋ฐ”ํƒ•์œผ๋กœ ์ ์ ˆํ•œ ํŒจํ‚ค์ง€ ๊ทœ์น™์— ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค [5]. ์ด๋ฅผ ํ†ตํ•ด ์ „์—ญ ๊ทœ์น™์„ ์ ์šฉํ•˜๋ฉด์„œ๋„ ๋น„-React ํŒจํ‚ค์ง€์™€ Next.js ํŒจํ‚ค์ง€์˜ ๊ฒฝ๊ณ„๋ฅผ ๋ช…ํ™•ํ•˜๊ฒŒ ์กด์ค‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [5]. - **Husky์™€ Lint-staged์˜ ํšจ์œจ์  ์—ฐ๋™:** ๋ฃจํŠธ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ๊ตฌ์„ฑ์ด ๋งˆ๋ จ๋˜๋ฉด Husky์˜ pre-commit ํ›…์„ ํ†ตํ•ด ๋ฃจํŠธ์˜ `lint-staged`๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค [6]. ์ด ๊ณผ์ •์—์„œ ์˜ค์ง ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ๋งŒ ์‹๋ณ„๋˜๋ฉฐ, ๋ฃจํŠธ ์„ค์ •์˜ ๋งคํ•‘์— ๋”ฐ๋ผ ๊ฐœ๋ณ„ ํŒจํ‚ค์ง€ ๋ฃฐ์— ๋งž๊ฒŒ ๋น ๋ฅด๊ณ  ์ •ํ™•ํ•˜๊ฒŒ ๋ฆฐํŒ…๋ฉ๋‹ˆ๋‹ค [6], [9]. - **Turborepo ์บ์‹ฑ ํ†ตํ•ฉ:** ๊ณตํ†ต ESLint ์„ค์ • ํŒจํ‚ค์ง€๋ฅผ `turbo.json`์˜ ์ „์—ญ ์˜์กด์„ฑ(global dependency)์œผ๋กœ ์ถ”๊ฐ€ํ•จ์œผ๋กœ์จ ์„ค์ •์ด ๋ณ€๊ฒฝ๋  ๋•Œ ๋ชจ๋“  ํŒจํ‚ค์ง€์˜ ์บ์‹œ๊ฐ€ ์ ์ ˆํžˆ ๋ฌดํšจํ™”(invalidate) ๋˜๋„๋ก ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค [6]. ์ด๋Š” ๊ฒฐ๊ณผ์ ์œผ๋กœ ๋ฆฐํŠธ ๊ฒฐ๊ณผ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์บ์‹ฑํ•˜์—ฌ ์ž‘์—… ์†๋„๋ฅผ ๋น„์•ฝ์ ์œผ๋กœ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค [6], [9]. ## โš ๏ธ ๋ชจ์ˆœ ๋ฐ ์—…๋ฐ์ดํŠธ (Contradictions & RL Update) - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** ์ž๋™ํ™” ์—”์ง„์— ์˜ํ•ด ๋งคํ•‘๋œ ์ง€์‹์œผ๋กœ, ์ถ”ํ›„ ์ •๋ฐ€ ๊ฒ€์ฆ ํ•„์š”. - **์ •์ฑ… ๋ณ€ํ™”:** Programming & Language ๋ถ„์•ผ์˜ ์ž๋™ ์ž์‚ฐํ™” ์ˆ˜ํ–‰. ## ๐Ÿ”— ์ง€์‹ ์—ฐ๊ฒฐ (Graph) - **Related Topics:** [[ESLint|ESLint]], [[Prettier|Prettier]], [[Husky|Husky]], [[lint-staged|Lint-staged]] - **Projects/Contexts:** Next.js ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ๊ณต์œ  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(Library) ํ™˜๊ฒฝ - **Contradictions/Notes:** ์†Œ์Šค์— ์ƒ์ถฉํ•˜๋Š” ๋‚ด์šฉ์ด๋‚˜ ๊ด€๋ จ ์ •๋ณด๊ฐ€ ๋ถ€์กฑํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋งŒ ๊ธฐ์กด์˜ ์ค‘๋ณต๋˜๊ณ  ๋ถ„์‚ฐ๋œ ์„ค์ • ๋ฐฉ์‹๊ณผ, ์ค‘์•™ ์ง‘์ค‘ํ™” ๋ฐ ๋ฃจํŠธ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜์„ ๋„์ž…ํ•œ ํ˜„๋Œ€์  ๋ฐฉ์‹ ๊ฐ„์˜ ๊ฐœ๋ฐœ์ž ๊ฒฝํ—˜(DX) ์ฐจ์ด๊ฐ€ ๊ทน์ ์œผ๋กœ ํ–ฅ์ƒ๋จ์„ ๊ฐ•์กฐํ•ฉ๋‹ˆ๋‹ค [1], [9]. --- *Last updated: 2026-04-19* - Raw Source: 00_Raw/2026-04-20/Turborepo ๊ธฐ๋ฐ˜ ๋ชจ๋…ธ๋ ˆํฌ ์›Œํฌํ”Œ๋กœ์šฐ.md ---