vercel์ nextjs๋ฅผ yarn berry๋ก ์์ํด๋ณด์!
yarn , node, npm ์ค์น๊ฐ ๋์ด์๋ค๋ ์ ์ ํ์ ์งํ๋ฉ๋๋ค.
์๋ ๋ช ๋ น์ ํตํด ํ๋ก์ ํธ ๋๋ ํ ๋ฆฌ๋ฅผ ์์ฑํด๋ฒ๋ฆฌ์ฃ .
yarn create next-app --typescript
์ธํ์ฐฝ์ด ๋์ค๋ฉด ๊ธฐ๋ํ๋ ๋๋ ํ ๋ฆฌ๋ช /ํ๋ก์ ํธ๋ช ์ ์ ๋ ฅํด์ฃผ์ธ์.
์ nextjs-project ์ ์ ๋ ฅํ ๊ฑฐ์์!
โ ๏ธ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค๋ฉด, ์์ ๋๋ ํ ๋ฆฌ์ package.json์ด๋ yarn.lock์ด ์๋๊ฑด ์๋์ง ์์ฌํด๋ณด์ธ์. (์ 2์๊ฐ ์ฝ์งํ์ด์ ๐ญ )
yarn berry๋ฅผ ์ฐ๋ฉด ์ ์ข์๊น?
zero install ์ ํ์ฉํ๊ธฐ ์ํด์ yarn berry๋ฅผ ์ธํ ํฉ๋๋ค.
# ์ต์ ๋ฒ์ ์ yarn(berry) ์ฌ์ฉ ์ค์
yarn set version stable
# ํจํค์ง ์ค์น
yarn
# ์์์ node_modules๊ฐ ์๊ธด๋ค๋ฉด ์๋๋ฅผ package.json์ ์ถ๊ฐ
"packageManager": "yarn@3.1.1",
# ์๋๋ฅผ ๊ทธ๋ฅ ์คํ(.yarnrc.yml ์ pnp ๋ด์ฉ ์ถ๊ฐ)
echo 'nodeLinker: "pnp"' >> .yarnrc.yml
# yarn typescript ํ๋ฌ๊ทธ์ธ ์ค์
yarn plugin import typescript
yarn add -D typescript
yarn
# ํ์
/๋ชจ๋ ์ถ๋ก ์ ์ํ yarn berry์ vscode ์ธํ
yarn dlx @yarnpkg/sdks vscode
# ๊ฐ๋ฐ๋ชจ๋๋ก ๋์๋ณด๊ธฐ
yarn dev
๐ ์์ฒ๋ผ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค๋ฉด ๐ ์๋๋ฅผ ๋ด์ฃผ์ธ์.
vercel/next.js๊ฐ yarn berry๋ฅผ ๋งค๋๋ฝ๊ฒ ์ง์ํด์ฃผ์ง๋ ์๋ ๋ฏ ํ๋ฐ, ์ต์ ๋ฒ์ ์์๋ patch๋์ด ์ ์ ๋์์ด ๋๋ ๋ฏ ํฉ๋๋ค.
์ฐพ์๋ณธ ๊ธฐ๋ก ๐
https://github.com/vercel/next.js/issues/20955
https://github.com/vercel/next.js/issues/31552
ํ ์ค ์์ฝ
yarn add next@12.0.4
๋ก ์
๋ฐ์ดํธํด์ฃผ๋ฉด ํด๊ฒฐ ๐
https://yarnpkg.com/getting-started/qa/#which-files-should-be-gitignored
.gitignore์ ์๋ ๋ด์ฉ์ ์ถ๊ฐํด์ฃผ๋ฉด ๋ค์๋ถํฐ clone๋ฐ์ ๋, ๋น ๋ฅด๊ฒ ์ค์น ๊ฐ๋ฅํด์
.yarn/*
!.yarn/cache
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/sdks
!.yarn/versions
์ ์์
๋ ๋ด์ฉ์ ์ฌ๊ธฐ์์ ํ์ธํ ์ ์์ด์ ๐
์ค์
์ โญ๏ธ ๋๋ฌ์ฃผ์๋ ๊ฑฐ ์์ง ๋ง์ธ์ ๐
์ด์ ์ฒ์ Next.js๋ฅผ ์ฌ์ฉํด๋ณด๊ธฐ ์์ํ๋๋ฐ, ๊น๋ํ ์ ๋ฆฌ ๊ฐ์ฌํฉ๋๋ค! ๐