Skip to main content

このバージョンの GitHub Enterprise サーバーはこの日付をもって終了となりました: 2024-09-25. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの向上、新機能の向上を図るために、最新バージョンの GitHub Enterprise サーバーにアップグレードしてください。 アップグレードに関するヘルプについては、GitHub Enterprise サポートにお問い合わせください

GitHub PackagesとGitHub Actionsについて

GitHub Actionsワークフローを通じてパッケージを管理する基礎を学んでください。

継続的インテグレーションワークフロー内でのパッケージング

パッケージングのステップは、継続的インテグレーションあるいは継続的デリバリのワークフローの一般的な部分です。 継続的インテグレーションワークフローの終わりにパッケージを作成すれば、プルリクエストに対するコードレビューの間に役立つことがあります。

コードをビルドしてテストした後、パッケージングのステップで実行可能な、あるいはデプロイ可能な成果物を生成できます。 ビルドしているアプリケーションの種類によって、このパッケージは手動でのテストのためにローカルにダウンロードしたり、ユーザーがダウンロードできるようにしたり、ステージングあるいはプロダクションの環境にデプロイしたりできます。

たとえば、Java プロジェクトの継続的インテグレーション ワークフローで mvn package を実行して JAR ファイルを生成できます。 あるいは、Node.jsアプリケーションのためのCIワークフローは、Dockerコンテナを作成するかもしれません。

そうすれば、プルリクエストをレビューする際には、ワークフローの実行を見て生成された成果物をダウンロードできるでしょう。

ワークフロー実行の [成果物] セクションのスクリーンショット。 実行によって生成された成果物の名前 "artifact" が濃いオレンジ色の枠線で囲まれています。

こうすれば、Pull Request中のコードを自分のマシン上で実行できるので、Pull Requestのデバッグやテストに役立ちます。

パッケージを公開するためのワークフロー

継続的インテグレーションのワークフロー中で、テストのためにパッケージ化された成果物をアップロードすることに加えて、プロジェクトをビルドして、パッケージをパッケージレジストリに公開するワークフローを作成できます。

  • GitHub Packages へのパッケージの公開 GitHub Packages は、多くの種類のパッケージについてパッケージ ホスティング サービスとして振る舞うことができます。 パッケージをGitHubのすべてと共有することも、パッケージをプライベートにしてコラボレータやOrganizationと共有することもできます。 詳しくは、「GitHub Packages の概要」を参照してください。

    デフォルトブランチへのプッシュごとに、パッケージを GitHub Packages に公開することをお勧めします。 そうすれば、プロジェクトの開発者は常にデフォルトのブランチからの最新のビルドをGitHub Packagesからインストールして実行及びテストできるようになります。

  • パッケージ レジストリへのパッケージの公開 多くのプロジェクトで、新しいバージョンのプロジェクトがリリースされたときにパッケージ レジストリへの公開が行われます。 たとえば、JARファイルを生成するプロジェクトは、新しいリリースをMaven Centralリポジトリにアップロードするかもしれません。 あるいは、.NETのプロジェクトはnugetのパッケージを生成し、NuGet Galleryへアップロードするかもしれません。

    これは、リリースが作成される度にパッケージをパッケージレジストリに公開するワークフローを作成すれば、自動化できます。 詳しくは、「リポジトリのリリースを管理する」を参照してください。