GitHub에 Nuget Package 배포하기 - 2
본격적으로 패키지를 배포해봅시다
.csproj 수정
게시할 패키지의 *.csproj 파일에 아래와 같이 프로퍼티를 추가합니다. (패키지 더블 클릭하면 생김)
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<PackageId>[PACKAGE_NANE]</PackageId>
<Version>1.0.0</Version>
<Authors>[AUTHOR]</Authors>
<Company>[COMPANY]</Company>
<RepositoryUrl>https://github.com/[OWNER]/[REPOSITORY]</RepositoryUrl>
</PropertyGroup>
그리고 팁을 주자면 이거는 직접 수정하는 것 보다 패키지를 우클릭하면 속성창에서 손쉽게 설정이 가능하다!!

이거는 내가 새로 만들고 있는 누겟 패키지인데, 이걸로 한번 설정을 해보자!!
지금 보면 아무 설정도 안건드린건데, 여기서 한번 속성을 건드려보자!!
(Nullable은 왜인지 모르게 .NET 6 부터 자꾸 nullable 경고가 뜨길래 그냥 disable로 수정하면 경고 안뜸... 아니면 경고 안뜨게 하려면 ?연산자를 다 붙여야되는데 개귀찮음...)

먼저 속성창에서 패키지로 들어가면 맨 위에 뜨는게 "빌드 작업 중 패키지 파일을 생성합니다" 이다.
이거는 다 누겟 패키지가 완성되고 나서 배포할 준비가 되어있으면 이따가 명령어 한줄 더 안써도 돼서 편하긴 함
(대신 막 누르다가 버전 관리 제대로 안될 수 있으니 나중에 다 완성되었을때 누르는걸로..)

그리고 여기 보면 아까 프로퍼티가 이렇게 쫙 잘 정리 되어있음!!
이걸로하면 오타도 안날 가능성도 크고 넘 편함
이렇게 다 설정하면 .csproj 파일은 이렇게 변합니다

아직 저는 누겟 패키지를 다 완성하기 못했기 때문에 버전은 그냥 0.0.1-alpha로 할게여
그다음! 이제 하이라이트
프로젝트 패키징 및 깃허브로 푸시
💡ctrl+` 누르면 바로 Developer Power Shell 이 뜬다!
아까 앞에서 빌드 시 nupkg 생성을 안눌렀으면 이 명령어를 무조건 해줘야함!! (했으면 안해도 됨)
$ dotnet pack --configuration Release
근데 이때.. 중요하게 봐야할게 바로...

디버그던 릴리즈던 이거를 빌드하고 나서 팩을 해야함 ㅜㅜ
그리고 디버그로 빌드 했으면 위에 명령어에서 Release 대신에 Debug로 하면 됨!!
정상적으로 했다면 이런 창이 뜹니다

이렇게 오류 없이 떠용
그리고 다음!
바로 깃허브에 누겟 패키지 올리기!
$ dotnet nuget push "bin/Release/[PACKAGE_NANE].1.0.0.nupkg" --source "github"
바로 올려볼게용

그러면 이렇게 뜨면서 "패키지를 푸시했습니다" 라는 결과가 나옵니다!
그럼 이제 깃허브를 확인해봅시다!!

원래 패키지 하나였는데 두개로 바뀌었네요!!

안에 들어가보면 이렇게 새로운 패키지(full_License)까지 들어가 있는걸 볼 수 있따!!
굳!