시험판 패키지 빌드
새 버전 번호를 포함하는 업데이트된 패키지를 릴리스할 때마다 NuGet은 해당 패키지를 Visual Studio 내의 패키지 관리자 UI에 표시된 "안정적인 최신 릴리스"로 간주합니다.
안정적인 릴리스란 프로덕션 환경에서 사용할 수 있을 만큼 안정적인 릴리스입니다. 안정적인 최신 릴리스는 패키지를 업데이트하거나 복원하는 동안 설치됩니다(패키지 다시 설치 및 업데이트에 설명된 대로 제약 조건 적용).
소프트웨어 릴리스 주기를 지원하기 위해 NuGet 1.6 이상을 사용하면 시험판 패키지의 배포에 허용됩니다. 여기서 버전 번호에는 -alpha
, -beta
또는 -rc
와 같은 유의적 버전 접미사가 포함됩니다. 자세한 내용은 패키지 버전 관리를 참조하세요.
다음 방법 중 하나를 사용하여 이러한 버전을 지정할 수 있습니다.
프로젝트에서 사용 하는 경우
PackageReference
: 의미 체계 버전 접미사가 포함된.csproj
파일의PackageVersion
요소:<PropertyGroup> <PackageVersion>1.0.1-alpha</PackageVersion> </PropertyGroup>
프로젝트에
packages.config
파일이 있는 경우: 의미 체계 버전 접미사가 포함된.nuspec
파일의version
요소:<version>1.0.1-alpha</version>
안정적인 버전을 출시할 준비가 되면 접미사를 제거합니다. 그러면 패키지가 시험판 버전보다 우선 적용됩니다. 다시 패키지 버전 관리를 참조하세요.
시험판 패키지 설치 및 업데이트
기본적으로 NuGet은 패키지에서 작업할 때 시험판 버전을 포함하지 않지만 다음과 같이 이 동작을 변경할 수 있습니다.
Visual Studio의 패키지 관리자 UI: NuGet 패키지 관리 UI에서 시험판 포함 확인란을 확인합니다.
이 확인란을 설정 또는 해제하면 패키지 관리자 UI 및 설치할 수 있는 사용 가능한 버전 목록을 새로 고칩니다.
패키지 관리자 콘솔:
Find-Package
,Get-Package
,Install-Package
,Sync-Package
및Update-Package
명령과 함께-IncludePrerelease
스위치를 사용합니다. PowerShell 참조를 참조하세요.NuGet CLI:
install
,update
,delete
및mirror
명령과 함께-prerelease
스위치를 사용합니다. NuGet CLI 참조를 참조하세요.
유의적 버전
유의적 버전 또는 SemVer 규칙은 버전 번호의 문자열을 활용하여 기본 코드의 의미를 전달하는 방법을 설명합니다.
이 규칙에서 각 버전에는 다음과 같은 의미를 포함한 세 부분인 Major.Minor.Patch
가 있습니다.
Major
: 주요 변경 사항Minor
: 이전 버전과 호환되는 새로운 기능Patch
: 이전 버전과 호환되는 버그 수정에만 해당
시험판 버전은 패치 번호 뒤에 하이픈과 문자열을 추가하여 표시됩니다. 엄밀히 말하면 하이픈 뒤에 ‘아무 문자열이나’ 사용할 수 있으며 NuGet은 패키지를 시험판으로 처리합니다. 그런 다음 NuGet은 해당 UI에 전체 버전 번호를 표시하여 소비자가 스스로 의미를 해석하도록 합니다.
이 점을 고려하여 일반적으로 다음과 같이 인식된 명명 규칙을 따르는 것이 좋습니다.
-alpha
: 일반적으로 개발 중 및 실험에 사용되는 알파 버전-beta
: 일반적으로 다음에 계획된 릴리스에 대한 기능 완료인 베타 릴리스이지만 알려진 버그를 포함할 수 있습니다.-rc
: 일반적으로 심각한 버그가 발생하지 않는 한 잠재적으로 최종적(안정적)인 릴리스인 릴리스 후보입니다.
참고
NuGet 4.3.0+는 1.0.1-build.23
과 마찬가지로 점 표기법을 사용하는 시험판 번호를 지원하는 유의적 버전 v2.0.0을 지원합니다. NuGet 4.3.0 이전 버전에서는 점 표기법이 지원되지 않습니다. 이전 버전의 NuGet에서는 1.0.1-build23
같은 양식을 사용할 수 있지만 이는 항상 시험판 버전으로 간주됩니다.
그러나 어떤 접미사를 사용하든지 NuGet은 알파벳 역순으로 우선 순위를 적용합니다.
1.0.1
1.0.1-zzz
1.0.1-rc
1.0.1-open
1.0.1-beta.12
1.0.1-beta.5
1.0.1-beta
1.0.1-alpha.2
1.0.1-alpha
표시된 대로 접미사가 없는 버전은 항상 시험판 버전보다 우선합니다.
semver2에는 선행 0이 필요하지 않지만 이전 버전 스키마를 따릅니다. 두 자리 숫자(이상)를 사용할 수 있는 시험판 태그에서 숫자 접미사를 사용하는 경우 앞에 오는 숫자 0(예: beta01 및 beta05)을 사용하여 숫자가 커지는 경우 올바르게 정렬하도록 합니다. 이 권장 사항은 이전 버전 스키마에만 적용됩니다.