FrontEnd02.Next.js01. Set uplocal 맥북 환경에서 pnpm 사용

Local 맥북 환경에서 pnpm 사용

현상

Next.js 프로젝트 안에서 pnpm 명령어를 사용 시 계속 package.json에 계속

"packageManager":"pnpm@10.8.1+sha512.c50088ba998c67b8ca8c99df8a5e02fd2ae2e2b29aaf238feaa9e124248d3f48f9fb6db2424949ff901cffbb5e0f0cc1ad6aedb602cd29450751d11c35023677"

이런 코드가 자동으로 생긴다. → pnpm을 사용하지 않는 팀원들이 많은데 이런 게 생기는 게 싫다. 이유를 봤더니 corepack에는 기본적으로 pnpm을 설치하지 않아도 pnpm을 사용할 수가 있는데, 이 때 corepack이 자동으로 사용한 이 특정 버전의 pnpm을 package.json에 pin 해버린다.

해결 방법 1

corepack을 이용하지 않고 pnpm을 globally 설치해서 사용하는 방법

> corepack disable
> npm install -g pnpm@latest

설치 확인

> npm list -g

해결 방법 2

맥북에서 ~/.zshrc에 이 auto pin을 해제시키는 방법

> nano ~/.zshrc

그리고 다음 줄 추가

export COREPACK_ENABLE_AUTO_PIN=0

그리고 reloading

source ~/.zshrc

그러면 corepack enable을 해도 pnpm 실행시 자동으로 package.json에 auto pin이 들어가지 않는다.