BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース OpenJDK が Github へ移行

OpenJDK が Github へ移行

原文(投稿日:2020/07/24)へのリンク

MercurialからGitHubへのOpenJDKプロジェクトの移行は、2020年9月までに完了する予定だ。新しいソースコード管理ソリューションに期待されるメリットとしては、パフォーマンスとコードレビューのサポートの向上が挙げられる。

OpenJDKでは、2008年からMercurialのソースコード管理ソリューションを利用して、ソースコードの保存やコードレビューを行っている。すでにいくつかのOpenJDKプロジェクトはGitHubに移行している。2020年9月にGitHubが公式の読み書きするメインリポジトリになった際には、JDKプロジェクトもそれらのプロジェクトに参加することになる。

LoomやValhalla、JMCなどのOpenJDKプロジェクトの中には、すでにMercurialからGitHubに完全移行しているものもある。JDK 自体のような他のいくつかのものは、移行が進行中だ。これらのプロジェクトでは、リポジトリはすでにGitHub上にあるが、読み込み専用のコピーとなっている。

先日、GitHubへの移行を担当したJoe Darcy氏がステータスの更新を行った。「JDK 15の終了かJDK 16の開始の期間にはJDKのメインラインをSkaraに移行したいと考えています」JDK 15は2020年9月にリリース予定、JDK 16は2021年3月にリリース予定だ。

2018年に、Project Skaraはソースコントロール管理のためにMercurialに代わる可能性のある選択肢を評価するために開始された。プロジェクトのミッションステートメントは、「新しい人も既存の人も、すべてのコントリビュータをより生産的なものにする」というものだ。

Twitterでの発言の次に、Darcy氏がメーリングリストの詳細な説明をしてくれた。「github.com でホストされている jdk/jdk リポジトリを、2020年9月上旬に JDK 16 のソースを読み書きのマスターに移行することを検討しています。これは、JDK 15 のスケジュールに従ってJDK 15のリポジトリが6月中旬にフォークされたから、JDK 15 の GA 日の数週間前になるでしょう」

jdk.java.net で公開されているアーリーアクセスの JDK 16 ビルドは、リポジトリの移行に先立ち、Mercurial ベースではなく Git ベースに移行する可能性がある。どの SCM が JDK ビルドのベースとして使用されているかは、ビルドのルートにある"release"ファイルの内容から推測できる。他の情報のうち、リリースファイルには、ビルドに使用されたソースの SCM と SCM のハッシュが記録される。

Mercurial の代替案を評価するために、Project Skara は評価基準のリストを定義した。

  • パフォーマンス:マスターリポジトリからのクローン操作の時間、ローカル操作の時間など
  • 空間効率
  • 異なる地域でのユーザビリティ
  • Linux、Mac、Windowsなどの一般的な開発環境をサポート
  • JDK の全歴史と今後 10 年間の成長予測を簡単にホストできる。
  • 一般的な JDK コードレビューのプラックティスをサポート
  • プロセスの支援とレビューとプロセスの自動化を可能にするプログラマティックAPI

既存のOpenJDK開発者が Mercurial に慣れ親しんでいることと、移行にかかるコストにもかかわらず、Git に移行することをSkaraプロジェクトのメンバーは決めた

Gitに移行する主な理由は、バージョン管理システムのメタデータの大きさと、ツールとホスティングの両方が利用できることだ。JEP357:Mercurial から Git への移行は、Git の動機を詳しく説明している。

GitHubが選ばれたのは、パフォーマンス、API、コミュニティの拡張性があったからだ。JEP369:GitHub への移行では、GitHub に移行する理由を説明している。

Project Skara 自身がGitHub上にリポジトリを持っている。それは GitHub への移行を支援するツールのリストを含んでいる。Mercurial のリポジトリを Git にインポートするツールや、その逆もある。次に、Mercurial を Git ハッシュに変換するなど、移行を支援する CLI ツールが含まれる。

この記事に星をつける

おすすめ度
スタイル

BT