GitHub 패키지란?
GitHub 패키지는 소스 코드 옆에 퍼블릭 또는 프라이빗 패키지를 쉽게 게시할 수 있는 패키지 관리 서비스입니다.
비고
GitHub에 대해 잘 모르는 경우 GitHub Learn 소개 모듈을 확인하세요.
GitHub 패키지는 패키지 레지스트리입니다.
GitHub 패키지를 사용하면 조직 내에서 또는 공개적으로 프로젝트 종속성을 공유할 수 있습니다.
패키지 종속성이 있는 프로젝트에서 작업하는 경우 패키지를 신뢰하고, 코드를 이해하고, 빌드한 커뮤니티와 연결하는 것이 중요합니다. 조직 내에서는 사용이 승인된 항목을 빠르게 찾을 수 있어야 합니다.
GitHub 패키지는 동일한 친숙한 GitHub 인터페이스를 사용하여 GitHub의 모든 위치에서 공용 패키지 또는 조직 또는 리포지토리 내의 프라이빗 패키지를 찾습니다.
표준 패키지 관리자
GitHub 패키지는 일반적인 패키지 관리 클라이언트와 호환되므로 선택한 도구를 사용하여 패키지를 게시할 수 있습니다. 리포지토리가 더 복잡한 경우 여러 유형의 패키지를 게시해야 할 수 있습니다. 웹후크 또는 GitHub Actions를 사용하여 게시 및 게시 후 워크플로를 완전히 사용자 지정할 수도 있습니다.
오픈 소스 패키지를 게시하고 있나요? 많은 오픈 소스 프로젝트는 GitHub에 해당 코드를 저장하므로 커뮤니티 내에서 테스트하기 위해 패키지의 시험판 버전을 게시한 다음, 특정 버전을 원하는 공용 레지스트리로 쉽게 승격할 수 있습니다.
작성 시 GitHub 패키지는 다음 패키지 관리자와 호환됩니다.
- npm, NodeJS 패키지 관리자
- NuGet, .NET 패키지 관리자
- RubyGems, Ruby 패키지 관리자
- Maven 및 Gradle, Java용 두 패키지 관리자
GitHub 패키지는 컨테이너 레지스트리이기도 합니다.
전체 애플리케이션에서 CLI 유틸리티에 이르기까지 컨테이너는 또 다른 형태의 배포 코드입니다. GitHub 패키지를 사용하면 컨테이너 이미지를 게시하고 배포할 수 있습니다. 퍼블릭 또는 비공개로 게시되면 다음을 포함하여 어디에서나 이러한 이미지를 사용할 수 있습니다.
- 로컬 개발 환경에서
- GitHub Codespaces 개발 환경의 기본 이미지로
- GitHub Actions를 사용하여 CI(연속 통합) /CD(지속적인 배포) 워크플로로 실행하는 단계
- 서버 또는 클라우드 서비스에서
GitHub 패키지와 GitHub 릴리스 비교
GitHub 패키지는 라이브러리의 릴리스를 표준 패키지 피드 또는 컨테이너 레지스트리에 게시하는 데 사용됩니다. 패키지가 만들어진 리포지토리 및 사용된 코드의 버전에 다시 연결하는 것과 같이 특정 패키지 관리 클라이언트가 해당 피드에서 작동하는 방식을 활용하기 위한 것입니다.
GitHub 릴리스 는 릴리스 정보 및 이진 파일에 대한 링크와 함께 패키지된 소프트웨어의 번들을 릴리스하는 데 사용됩니다. 해당 릴리스는 고유한 URL에서 직접 다운로드하여 생성된 특정 커밋으로 다시 추적할 수 있습니다. 릴리스를 tarball 또는 ZIP 파일로만 다운로드할 수 있습니다.
통합 ID 및 권한
소스 코드를 호스팅하기 위해 GitHub를 사용하여 프로젝트를 작업한다고 가정해 보겠습니다. 프런트 엔드용 JavaScript, npm 및 백 엔드용 Java가 있습니다. 이제 Git, npm 및 Maven 리포지토리의 경우 세 가지 이상의 사용자 자격 증명 및 권한 집합을 유지 관리합니다.
GitHub 패키지를 사용하면 소스 코드 리포지토리, 프라이빗 npm 레지스트리 및 Maven 또는 Gradle 프라이빗 레지스트리에서 단일 자격 증명 집합을 사용할 수 있습니다. GitHub를 통해 게시된 패키지는 리포지토리 수준에서 할당된 표시 유형 및 권한을 상속합니다. 새 팀 구성원이 패키지 및 해당 코드에 대한 읽기 액세스 권한이 필요한가요? 리포지토리에 대한 읽기 권한을 부여하면 완료됩니다.
GitHub에서 패키지 빌드 및 게시
GitHub Actions 는 소프트웨어 워크플로를 자동화할 수 있는 또 다른 GitHub 기능입니다. GitHub에서 코드를 빌드, 테스트 및 배포할 수 있습니다.
팁 (조언)
GitHub Actions에 대해 자세히 알아보려면 GitHub Actions Learn 모듈을 사용하여 CI(지속적인 통합 빌드) 워크플로를 확인하세요.
GitHub Actions와 GitHub 패키지를 결합하여 코드를 빌드하고 테스트한 다음, 단순히 리포지토리에 코드를 푸시하여 GitHub 패키지에 게시하는 워크플로를 빌드할 수 있습니다.
다음 단원에서는 워크플로를 사용하여 GitHub 패키지 및 GitHub Container Registry에 게시하는 방법을 알아봅니다.