適用於程式碼套件的 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 和專案環境,您可以參閱這裡的文件。
安裝套件
通過驗證後,您即可在專案中輕鬆使用已發佈的套件。 每個套件的首頁都會顯示要執行的命令,視專案環境而定。
管理套件
GitHub Packages 提供您幾種輕鬆管理套件生命週期和工作流程的方法。
您可以透過 GitHub API 和 GraphQL API 來管理 GitHub Packages。 這些 API 可讓您支援進階的整合案例。 例如,使用 GitHub 的 Webhook 功能時,您可以在發佈新套件時執行程式碼。 假設您是某個開放原始碼專案的維護人員。 使用 Webhook,您可以在發佈新套件時,自動發佈新的推文或部落格文章。
您也可以使用 GitHub Actions 將套件管理自動化。 使用 delete-package-versions 動作,您可以在發佈新版本的同時,自動剪除最舊的套件版本。