適用於程式碼套件的 GitHub Packages

已完成

在上一個單元中,您已了解如何使用 GitHub Actions 建置及發佈容器映像。

在本單元中,我們將探討 GitHub Packages 支援的其他套件。 GitHub Packages 會使用目前專案的生態系統工具:適合 npm 套件的 npm、nuget.exe,或適用於 NuGet 套件的 dotnet CLI 等等。

向 GitHub Packages 驗證身分

您向套件管理員驗證身分的方式取決於專案的生態系統。 無論使用哪一個生態系統,您都需要三項資訊:

  • 您的 GitHub 使用者名稱
  • 個人存取權杖
  • 套件生態系統的 GitHub Packages 端點

產生個人存取權杖

若要安裝、發佈或刪除套件,您需要存取權杖。 使用套件管理員時,您必須產生個人存取權杖 (PAT)。 您可以透過設定檔設定產生 PAT。

警告

權杖視同密碼,請安全保管。

登入 GitHub Packages

從 GitHub Packages 發佈或安裝套件之前,您必須先在套件管理員中驗證身分。 端點會看起來像 https://PACKAGE_TYPE.pkg.github.com/OWNER/REPOSITORY,其中 PACKAGE_TYPE 是您正在使用的套件生態系統類型。

下表示範根據套件生態系統向 GitHub Packages 驗證身分所需執行的命令。

您的套件生態系統 向 GitHub Packages 驗證身分的命令列
NuGet (英文) dotnet nuget add source https://nuget.pkg.github.com/OWNER/index.json -n github -u OWNER -p [Your PAT Token]
npm \(英文\) bash npm login --registry=https://npm.pkg.github.com
RubyGems echo ":github: Bearer GH_TOKEN" >> ~/.gem/credentials
Maven 和 Gradle 您可以在推送時直接驗證身分。

若要深入了解如何搭配使用 GitHub Packages 和專案環境,您可以參閱這裡的文件

安裝套件

通過驗證後,您即可在專案中輕鬆使用已發佈的套件。 每個套件的首頁都會顯示要執行的命令,視專案環境而定。

A Package page displays information about how to install it into your project, depending on the project environment.

管理套件

GitHub Packages 提供您幾種輕鬆管理套件生命週期和工作流程的方法。

您可以透過 GitHub API 和 GraphQL API 來管理 GitHub Packages。 這些 API 可讓您支援進階的整合案例。 例如,使用 GitHub 的 Webhook 功能時,您可以在發佈新套件時執行程式碼。 假設您是某個開放原始碼專案的維護人員。 使用 Webhook,您可以在發佈新套件時,自動發佈新的推文或部落格文章。

您也可以使用 GitHub Actions 將套件管理自動化。 使用 delete-package-versions 動作,您可以在發佈新版本的同時,自動剪除最舊的套件版本。