米GitHubは、GitHub.comのTeamプランおよびEnterprise Cloudプランにおいて、クラウド内でのより高速かつ協調的な開発環境を提供するCodespacesを、8月11日(現地時間)から利用できるようにした。
GitHub.comのコードベースは14年前に開発されたが、これまでの数か月でGitHub.comの開発は、macOSモデルを除いた大部分がCodespacesへ移行している。
かつては、Codespacesのブートストラップに45分以上かかっていたが、GitHub.comの開発をソースレベルでmacOSから切り離し、最終的にはLinuxホスト上で動作するGitHub.comのCodespacesをプロビジョニングし、非常に低速ながらもVisual Studio Codeから接続して、いくつかの作業を行えるようになった。
Codespacesの導入にあたって、github/githubを複製する方法が変更され、プロビジョニング時に完全なクローンを実行する代わりに、Codespacesがシャロークローンを実行し、最新のコミットでコードスペースが作成された後、バックグラウンドでリポジトリ履歴をアンシャローすることで、クローン時間が20分から90秒に短縮するとともに、GitHub.comをサポートするソフトウェアとサービスのネットワークをキャッシュすることによって、GitHub.comのCodespaces作成時間を45分から5分に短縮している。
さらに、事前にリポジトリのクローンを作成してブートストラップし、エンジニアがCodespacesを要求するまでに、ほとんどの作業を完了させることで、10秒でGitHub.comの開発準備を整えられるようになった。
ほかにも、Codespacesへの移行によって、ローカル開発環境の脆弱性とシングルトラックモデルが排除されるとともに、新たなレバレッジポイントが提供され、GitHub.comの開発に携わるエンジニアのマシン仕様が、Codespaces移行初期段階では8コアプロセッサ、メモリ16GBの仮想マシンから、32コアプロセッサ、メモリ64GBの仮想マシンへとアップグレードされている。
このような過程を経て、CodespacesはGitHub.comのデフォルト開発環境となった。なお、CodespacesにおけるGitHub.comの開発では、Visual Studio Codeだけでなく、VimやEmacs、必要ならedも実行できるようになっている。
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です