今年もUniverseの時期がやってきました。GitHub Universeは、2日間にわたって、4,000万人を超える開発者のすばらしい活躍と、オープンソースコミュニティに対するコントリビューションを讃える場です。この1年間だけで、70を超える国々の300万近い組織から、1,000万人を超える開発者が新たに参加しています。また、本日、GitHub ActionsとGitHub Packagesの正式版リリース、GitHub for mobileベータ版のリリース、通知管理の再設計、世界のコードを今後1,000年にわたり保護するプログラムの創設を発表しました。他にも数多くの機能をリリースしており、きっと気に入っていただけると思います。
GitHub Universeにおける新機能リリースの要約
コーディングからクラウドへのリリースまで、ワークフローを自動化
- GitHub Actions
- GitHub Packages
日々の開発エクスペリエンスを向上
- GitHub for mobile(ベータ版)
- 通知管理(制限付ベータ版)
- コードナビゲーション
- コードの検索(制限付ベータ版)
- コードレビューの割り当て(ベータ版)
- リマインダー機能(制限付ベータ版)
- 機能プレビュー
パブリックリポジトリを1,000年にわたって保護
- GitHub Archive Program
オープンソースプロジェクトのさらなるサポート
- プロジェクトごとにサポートできるGitHub Sponsors
GitHub Enterprise Serverの最新版を公開
- GitHub Enterprise Server 2.19
コーディングからクラウドへのリリースまで、ワークフローを自動化
GitHub Actions正式版をリリース
2018年のGitHub Universeにおいて、ソフトウェア開発の自動化に向けたコミュニティ主導のアプローチであるGitHub Actionsのベータ版をリリースしました。皆さんからのフィードバックを参考に、ソフトウェア開発の自動化を構築し、共有するコミュニティの新たなスタンダードへと、GitHub Actionsを発展させました。GitHub Actionsには完全なCI/CDソリューションと、ネイティブパッケージ管理機能も搭載しています。
また、GitHub Actionsの正規版をリリースしたことをお知らせするとともに、AWS、Google、HashiCorp、Twilioのほか、多くのコミュニティメンバーが開発したすばらしいコントリビューションに感謝します。現在、コミュニティで開発された1,200件を超えるワークフローをGitHub Marketplaceで入手でき、その数は急速に増えています。
さらに、セルフホストランナー、アーティファクトキャッシング、ARMベースのアーキテクチャ(Raspberry Piなど)でGitHub Actionsを実行できる機能を、無料で利用できるようになりました。
GitHub Packages正式版をリリース
2019年5月に、GitHub Packages (旧名:GitHub Package Registry)をリリースしました。GitHub PackageはGitHub組込みの権限管理や支払いと統合されており、ソースコードとパッケージを1か所に集約することができます。GitHubでホストされているパッケージには、詳細情報とダウンロード統計、およびすべての履歴が含まれます。GitHub Packagesのベータ版のリリース以来、30,000件を超えるすばらしいパッケージがアップロードされ、10,000を超える組織のニーズに貢献しています。
ベータ版に対する皆さんからのフィードバックを受けて、プライマリNPMレジストリのプロキシサポート、GitHub Actionsのトークン使用への対応のほか、多くの改善を加えました。
GitHub ActionsとGitHub Packagesで、コーディングからクラウドへのリリースを自動化
GitHub ActionsとGitHub Packagesは、すべてのユーザーが一定の時間、ストレージ容量、データ転送量まで無料で利用できます。また、パブリックリポジトリについてはすべて、無料で利用できます。GitHub Actionsを使ってパッケージの新しいバージョンを自動的にGitHub Packagesに公開したり、パッケージの更新をトリガーとしてActionsを実行したり、GitHub Packagesや他のパッケージレジストリにホストされたパッケージやイメージを最小限の設定でインストールすることができます。GitHub Actionsを通じてパッケージのアップロードおよびダウンロードを自動的に行う場合は、すべて、同じGITHUB_TOKENを使用します。
日々の開発エクスペリエンスを向上
GitHub for mobile (ベータ版)
GitHub for mobileで、どこにいても柔軟に仕事を進め、チームと連絡を取り合うことができます。GitHub for mobileを使うことで設計に関するディスカッションについてフィードバックを共有する、数行のコードをレビューするなど、複雑な開発環境を必要としない多くの作業をどこからでも簡単に実行できるようにしました。GitHub for mobileは美しいネイティブエクスペリエンスを実現しており、開発者はどこからでもコードをレビューし、変更をマージできるようになります。
GitHub for mobileは、ネイティブアプリケーションとしてあらゆる画面サイズに自動的に適応し、デバイスの設定に応じてダークモードにも対応します。
GitHub for mobileは現在、iOS用のベータ版を利用できます。Android用のベータ版も近日公開予定です。
通知管理(制限付きベータ版)
お気に入りのプロジェクトに関して膨大な量の通知が届くと、受信トレイがメッセージで埋まってしまい、必要な情報を見つけることが難しくなってしまいます。過去1年にわたり、リリースのみの通知、既読のマーク、Gistの通知など、チームとのコラボレーション方法を向上させる通知方法を提供してきましたが、このたび、メール通知を受信トレイに送信する代わりに、GitHub上で自分やチームに最も重要な通知をフィルタリングして、すばやくアクションを実行できるようにしました。通知を詳細に管理することにより、欲しい情報を短時間で探すことができ、重要なタスクを完了させることにフォーカスできます。パソコンの画面から離れていても効率化された通知をモバイルで確認することが可能となり、自分の働き方に合わせて開発作業を進められます。
通知をすばやく選別して対応し、受信トレイを空にすることができます。
最も重要な通知を見つけられるよう、カスタムフィルターを設定できます。レビューリクエスト用にデフォルトのフィルターがあるため、より迅速にチーム関連の通知に対応できます。
Webエクスペリエンスとモバイルエクスペリエンスがシームレスに連係するよう設計しました。すでにGitHub for mobileベータ版に参加しているユーザは、本日から通知管理のベータ版を利用できます。今後数か月で段階的に、GitHub.comの全ユーザへと展開していきます。
コードナビゲーション
日々の開発エクスペリエンス向上の一環として、GitHub上のコード間を移動する方法を増やしました。コードナビゲーションは2つの機能で構成されています。関数の定義へジャンプする機能と、すべてのリファレンスを検索する機能です。関数やメソッドの呼び出しの上にホバーすると、同じリポジトリ内のblobコンテンツにあるすべての呼び出しサイトについて、定義にジャンプするリンクとリファレンスが行番号順に表示されます。コード内の定義や呼び出し箇所の検索にあたっては、semanticというライブラリを利用しています。
コードナビゲーションは今年、一部のリポジトリを対象に制限付きパブリックベータ版としてリリースされました。現時点では、GitHub上のRuby、Python、Goのリポジトリで利用できます。他の言語にも近日対応予定です。パブリックリポジトリかプライベートリポジトリのコードタブを表示し、対応言語を確認のうえ、ぜひお試しください。
コードの検索(制限付きベータ版)
「コードの検索は開発に不可欠である」という明確なフィードバックが数多く寄せられました。従来の検索アプローチでは、大文字と小文字の区別、特殊文字、トークン化など、コーディング特有の要因で正確な検索結果を提示することができません。今後数か月で、リポジトリ内のコード検索で求められる正確な結果をもたらす、新しい検索エクスペリエンスを提供していきます。特殊文字や、大文字と小文字の区別にも対応します。
一部のオープンソースリポジトリを対象に、ひと足先に、完全一致検索機能をベータ版で提供しますので、ぜひお試しください。
コードレビューの割り当て(ベータ版)
Pull Requestでチームにレビューをリクエストする場合、レビューを追加する必要があるチームメンバーの数を指定できるようになり、対象者に直接コードレビューが割り当てられるようになりました。1人のコントリビュータにかかる負担が軽くなり、チーム内でワークロードを均等に分散させることができます。チーム内に作業を割り当てる方法として、2つのオプションを提供します。ラウンドロビンとロードバランスです。
コードレビューの割り当て機能は、Organizationのメンバーであるユーザ全員を対象に、ベータ版として提供しています。
リマインダー機能(制限付きベータ版)
リマインダーを活用してプロジェクトを進めましょう。レビューが滞っているPull Requestに対し、Slackへの通知タイミングを設定し、送信できます。チームの管理者またはメンテナーが、チームのリマインダーを設定できます。リマインダーは現在、制限付きベータ版を利用できます。今後数か月で一般に公開予定です。
機能プレビュー
機能プレビューは、GitHubでまだ正式リリースしていない機能を試す新しい方法です。機能プレビューからベータ版にオプトインし、フィードバックをGitHubに共有できるようになりました。今後数か月で、通知管理のベータ版やその他の機能について、機能プレビューからベータに参加できるようになる予定です。
本日より、ユーザ設定のドロップダウンから、機能プレビューにアクセスできます。今後も機能プレビューにベータ版を定期的に追加していきますので、ぜひお試しください。
パブリックリポジトリを1,000年にわたって保護
今から1,000年後にソフトウェアはどのようになっているのか、また人類はどうなっているのか、推測することしかできません。しかし、今日の時点で最も重要なビルディングブロックを、確実に明日に残せるようにすることは可能です。私たちの世界は、オープンソースソフトウェアで動いています。この文明の隠れた基盤であり、全人類の共有財産です。GitHub Archive Programの使命は、次世代のためにオープンソースソフトウェアを保護することです。
GitHubは、スタンフォード大学図書館、Long Now Foundation、 Internet Archive、Software Heritage Foundation、Piql、Microsoft Research、オックスフォード大学ボドリアン図書館などの機関や団体と連携し、世界のオープンソースコードを保護していきます。この貴重な知識を保護する方法として、あらゆるデータ形式でさまざまな場所に、継続的に複数のコピーを保存していきます。保存場所には、GitHub Arctic Code Vaultと呼ばれる、少なくとも1,000年は存続する非常に長期的なアーカイブも含まれます。
GitHub Sponsorsでより多くのオープンソースプロジェクトをサポート
オープンソースのプロジェクト単位でGitHub Sponsorsの資金を受け取ることができるようになりました。2019年5月にGitHub Sponsorsを開始したところ、オープンソースに資金提供したいという熱意が数多く寄せられました。また、すばらしいフィードバックも数多く受け取りましたが、そこには一貫したテーマがありました。
コミュニティは、オープンソースプロジェクトを支える人々にも資金提供する方法が必要だという点です。これを受け、本日よりオープンソースのプロジェクト単位でGitHub Sponsorsの資金を受け取ることができるようになりました。
この展開がGitHub Sponsorsの次のステップとなるのは当然のことであり、オープンソースとは何か、つまり「巨人の肩の上に立ち、お互いに協力する」ことであるという核心を突くものです。プロジェクト単位での資金調達は、オープンソースがどのようにして作られたかを反映しています。
私たちはまた、資金の流入により、チームにとって予期せぬ新たな課題が引き起こされる可能性にも留意しています。そのため、初期段階では細心の注意を払って、透明性を促進するとともに、資金提供に関する意思決定がどのように行われているかについての洞察をコントリビュータに共有します。
さらに、これで終わりではありません。オープンソースに取り組む開発者にコミュニティが資金提供できるよう、全力でサポートしていきます。また、そのために、今後も新たな方法を構築し続けます。
企業やNPOに関わらず、オープンソースに取り組んでいる組織のメンバーの方は、ウェイティングリストにご登録ください。
GitHub Enterprise Serverの最新リリースを公開
Fortune 500にランクインしている企業の半数以上がGitHub Enterpriseを愛用している理由は、ワークフローの自動化から世界最大のオープンソースコミュニティとの連携まで、さまざまです。Enterprise Serverの最新リリースには、コミュニティおよびプロジェクト管理のアップデート、開発者ユーティリティーのほか、新しいセキュリティ機能が含まれており、GitHubを最も安全なソフトウェア構築の場にしています。