티스토리 뷰
728x90
반응형
npm의 workspace처럼 pnpm에서도 workspace를 지원하여 모노레포를 구성할수 있습니다
pnpm-workspace.yaml 파일을 생성하여 다음 코드를 작성하는것으로 워크스페이스를 사용할수 있습니다
packages:
# specify a package in a direct subdir of the root
- 'my-app'
# all packages in direct subdirs of packages/
- 'packages/*'
# all packages in subdirs of components/
- 'components/**'
# exclude packages that are inside test directories
- '!**/test/**'
여기서 언급된 패키지들이 workspace로 구성됩니다
워크스페이스 구성후에는 다음과 같은 명령어를 사용합니다
root 프로젝트의 package.json의 명령어를 사용하기 위해서는 아래의 명령어를 사용합니다
pnpm -w <command>
root 프로젝트의 커맨드를 사용합니다
--workspace-root 의 약자입니다
root 프로젝트가 아닌 다른 프로젝트의 명령어를 실행하기 위해서는 아래의 명령어를 사용합니다
pnpm --filter <패키지선택자> <command>
--filter 옵션에서 사용가능한 패키지 선택자는 다양한 조합으로 사용할수 있습니다
pnpm --filter "@babel/core" test
pnpm --filter "@babel/*" test
pnpm --filter "*core" test
더 고급의 필터 규칙을 찾고 싶으신 경우는 위의 페이지를 방문해주세요
패키지 설치는 --filter 옵션을 이용하거나 -w 옵션을 이용하여 설치하시면 됩니다
pnpm --filter <패키지선택자> add <pkg>
pnpm add <pkg> -w
혹시 모노레포의 모든 명령어를 한번에 실행하고 싶으시다면 -r 옵션을 이용할수 있습니다
pnpm -r <command>
recursive 옵션입니다
순환하여 명령어를 실행합니다
예를 들어 test 명령어를 모든 패키지에 설정해놓았다면
한번의 명령어를 통해 내부의 모든 프로젝트의 test 명령어가 수행됩니다
728x90
반응형
'WEB2.0 > 프로그래밍' 카테고리의 다른 글
postgresql docker 활용하기 (0) | 2025.01.21 |
---|---|
npm / yarn 에서 pnpm으로 이사하기 (0) | 2025.01.18 |
mac에서 mongdb 실행 오류 발생할때 (1) | 2024.12.12 |
타입스크립트의 초과속성체크(excess property checks)를 알고 계셨나요? (0) | 2024.12.05 |
jest를 통해 테스트대역 파헤치기 (1) | 2024.12.04 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- iPhone
- 네이버
- 구글
- CSS
- JavaScript
- 아이폰
- android
- AWS
- 대학생
- 스마트폰
- 트위터
- 어플리케이션
- 자바스크립트
- 애플
- 경진대회
- 게임
- 웹표준
- 창업
- 모바일
- 앱스토어
- 안드로이드
- 소프트웨어
- 공모전
- 벤처
- php
- Apple
- 아이디어
- 앱
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함