버전 관리 설정
추가된 버전: v11.13.0
이 설정은 pnpm change와 단독 pnpm version -r로 구동되는 pnpm의 네이티브 워크스페이스 릴리스 관리를 구성합니다. 이 설정이 속한 워크플로우는 릴리스 관리를 참조하세요.
두 워크스페이스 프로젝트가 같은 이름으로 게시되는 경우, 프로젝트를 ./로 시작하는 워크스페이스 상대 디렉터리로 참조할 수 있으며, 이는 versioning.fixed, versioning.ignore, versioning.lanes의 키에서 이름 대신 사용합니다.
versioning.fixed#
- 기본값: []
- 유형: string[][]
항상 하나의 공유 버전으로 함께 릴리스되는 패키지 그룹입니다. 공유 버전은 그룹에서 현재 가장 높은 버전에 구성원이 필요로 하는 가장 큰 버전 상승을 적용한 값입니다.
versioning:
fixed:
- ['@example/cli', '@example/napi']
고정 그룹은 레인 간에 함께 이동해야 하며, 에픽의 내부에 전부 있거나 외부에 전부 있어야 합니다.
versioning.ignore#
- 기본값: []
- 유형: string[]
버전 관리와 종속성 전파에서 영구적으로 제외되는 패키지입니다. 무시되는 패키지에 대해 실제 버전 상승을 요청하는 변경 의도는 실패합니다.
versioning:
ignore:
- '@example/internal'
versioning.maxBump#
- 기본값: undefined (상한 없음)
- 유형: 'patch', 'minor', 'major'
현재 체크아웃에서 릴리스가 적용할 수 있는 버전 상승의 상한을 지정합니다. 종속성 전파와 고정 그룹 해결 이후 최종 조립된 릴리스 계획에 적용되므로, 패치 전용 유지보수 브랜치가 실수로 마이너 버전을 배포할 수 없습니다.
versioning:
maxBump: patch
versioning.lanes#
- 기본값: {}
- 유형: Record<string, string>
패키지를 해당 패키지가 속한 릴리스 레인에 매핑합니다. 레인은 X.Y.Z-<lane>.N 프리릴리스를 내보내는 병렬 릴리스 트랙이며; 목록에 없는 모든 패키지는 예약된 기본 레인인 main에 속하고 안정 버전을 릴리스합니다.
versioning:
lanes:
'@example/cli': alpha
레인 이름에는 영숫자와 하이픈만 사용할 수 있으며, 숫자로만 구성할 수 없습니다. main은 예약되어 있어 할당할 수 없습니다 — 대신 항목을 제거하거나 pnpm lane main --filter <pkg>를 사용하세요.
versioning.epics#
- 기본값: []
- 유형: Array<{ lead: string, packages: string[] }>
구성원 패키지 그룹을 리드 패키지에 연결하며, 모든 구성원의 메이저 버전을 리드의 메이저에서 파생된 범위로 제한합니다: 리드가 메이저 M에 있는 동안 구성원은 M*100 … M*100+99.
versioning:
epics:
- lead: '@example/app'
packages:
- './packages/**'
- '!./packages/private-*'
lead는 패키지 이름 또는 ./로 시작하는 워크스페이스 디렉터리입니다. packages는 pnpm의 패키지 선택자 — 이름 글롭, ./로 시작하는 디렉터리 글롭, !로 시작하는 부정 — 로 매칭되며, 순서대로 평가되어 마지막으로 일치하는 항목이 적용됩니다. 하나의 패키지는 최대 하나의 에픽에만 속할 수 있습니다.
범위가 적용되고 재기준화되는 방식은 에픽을 참조하세요.
versioning.changelog.storage#
- 기본값: 'registry'
- 유형: 'registry', 'repository'
릴리스 변경 로그가 저장되는 위치입니다.
registry를 사용하면 CHANGELOG.md가 커밋되지 않습니다: 각 릴리스의 섹션은 게시 시점에 작성되어 이전에 게시된 버전의 변경 로그 위에 추가된 뒤 게시되는 tarball에 포함됩니다.
repository를 사용하면 모든 패키지에 CHANGELOG.md가 커밋됩니다.
versioning:
changelog:
storage: repository