pnpm lane
추가된 버전: v11.13.0
패키지별 릴리스 레인을 관리합니다. 레인은 병렬 릴리스 트랙입니다. 패키지가 레인에 있는 동안 인수 없이 실행한 pnpm version -r은 해당 패키지를 X.Y.Z-<lane>.N 프리릴리스로 릴리스하고, 워크스페이스의 나머지는 계속 안정 버전을 릴리스합니다. 패키지를 메인 레인으로 되돌리면 다음 실행 시 누적된 안정 버전이 릴리스됩니다.
pnpm lane
pnpm lane <name> --filter <pattern>
pnpm lane main --filter <pattern>
멤버십은 pnpm-workspace.yaml의 versioning.lanes 키 아래에 저장되며, 이 명령은 해당 키를 편리하게 편집하는 도구입니다.
사용#
레인 멤버십 표시#
pnpm lane
Lanes:
alpha:
@example/cli
@example/napi
어떤 패키지도 레인에 할당되지 않았다면 다음 메시지를 출력합니다 All packages are on the main lane.
패키지를 레인으로 이동#
pnpm lane alpha --filter @example/cli
--filter는 필수이며 이동할 패키지를 선택합니다. 레인 이름에는 영숫자와 하이픈만 사용할 수 있으며, 숫자로만 구성할 수 없습니다.
패키지를 메인 레인으로 되돌리기#
pnpm lane main --filter @example/cli
main은 기본 레인의 예약된 이름입니다. 다른 곳에 할당하지 않는 한 모든 패키지는 이 레인에 있으며, 이 레인의 패키지는 안정 버전을 릴리스합니다. 패키지를 졸업시키면 다음 pnpm version -r 실행 시 해당 프리릴리스가 목표로 하던 안정 버전이 릴리스됩니다.
레인의 버전#
레인에 있는 패키지는 X.Y.Z-<lane>.N을 릴리스합니다. 여기서 X.Y.Z는 레인이 목표로 하는 안정 버전이고 N은 0부터 증가합니다:
| 현재 버전 | 대기 중인 의도 | 레인 | 새 버전 |
|---|---|---|---|
2.0.0 | minor | alpha | 2.1.0-alpha.0 |
2.1.0-alpha.0 | patch | alpha | 2.1.0-alpha.1 |
2.1.0-alpha.1 | major | alpha | 3.0.0-alpha.0 |
3.0.0-alpha.0 | — | main | 3.0.0 |
안정 버전 목표가 바뀔 때마다 N은 0으로 다시 시작합니다. 레인이 마이너 버전을 목표로 하던 중 major 의도가 들어오는 것처럼 버전 증가로 목표가 상향되면 목표가 다시 계산되고 카운터가 초기화됩니다.
같은 고정 그룹에 속한 패키지는 레인 간에 함께 이동해야 합니다.
옵션#
--filter <package_selector>#
레인 간에 이동할 패키지를 선택합니다. 레인을 할당할 때 필요합니다.