今週、Bitbucket が Mercurial のサポートを中止すると発表されたが、これはこのソフトウェアにとってまたしても終焉を意味するものである。
Atlassian のバージョン管理ソフトウェア ホスティング サービスである Bitbucket は、2008 年のサービス開始時には Mercurial リポジトリのみをサポートしていました。2012 年までに、このビジネスでは Mercurial と、もう 1 つの主要な分散バージョン管理システムである Git のそれぞれの利点に関するゲスト ブログ投稿を特集していました。
しかし、今から 1 年も経たないうちに、Bitbucket は Mercurial をサーバーから追放し、残っているリポジトリをすべて削除する予定です。
ビットバケットのシニアプロダクトマーケティングマネージャーであるデニス・チャン氏は火曜日のブログ投稿で、長年にわたり同サービスの開発者の間ではGitが好まれる選択肢となったため、同社はMercurialのサポートを停止することを決定したと述べた。
「慎重に検討した結果、Bitbucket CloudとそのAPIからMercurialのサポートを削除することを決定しました」とチャン氏は述べた。「Mercurialの機能とリポジトリは、2020年6月1日にBitbucketとそのAPIから正式に削除されます。」
2020 年 2 月 1 日以降、ユーザーは新しい Mercurial リポジトリを作成できなくなります。
Facebook、Google、Mozilla などの企業では Mercurial が継続的に使用されているにもかかわらず、Git の採用が急増しているため、開発者は何年もの間 Mercurial の終焉について考え続けてきました。
Mercurialは、Bitbucketの顧客やアンケート調査に参加した開発者の間で、もはや無関係になりつつある。チャン氏によると、Bitbucketの新規ユーザーのうち、バージョン管理システムとしてMercurialを選択するのは1%未満だという。さらにチャン氏は、StackOverflowの2018年開発者調査のデータも引用しており、これも同様に厳しい結果となっている。開発者の87%がGitを使用しているのに対し、Mercurialを使用しているのはわずか4%程度だという。
トップリポジトリ管理者が悪質なSSHベクトルをクローンして閉じる
続きを読む
Mercurialからの移行を進めているのはBitbucketだけではありません。OpenJDKプロジェクトもGitへの移行を進めています。「Java Enhancement Proposal 357: Migrate from Mercurial to Git」の著者であるOracle開発者のErik Duveblad氏とJoe Darcy氏によると、移行の動機としては、バージョン管理メタデータのサイズ削減、Gitサポートを統合した開発ツールの拡充、そしてGitリポジトリのホスティングオプションの多様化などが挙げられます。
Bitbucketにとって、2つのバージョン管理システムをサポートするという技術的な負担も課題となっている。アプリ開発者が複数プラットフォームでアプリを保守するために必要な余分な労力に頭を悩ませているように、クラウドホスティング業界はMercurialとGitの両方に注力することでサービスの品質が低下することを懸念している。
Mercurial を使っている人たちへのチャン氏のアドバイスはシンプルだ。Git を使うか、Mercurial をどこか別の場所に放り込むかだ。「既存の Mercurial リポジトリを Git に移行することをお勧めします」とチャン氏は言い、hg-fast-export や hg-git mercurial プラグインといった Git 変換ツールをいくつか挙げた。
Bitbucketの移行に愕然とした人の中には、開発者のアンディ・マクルーア氏もいます。彼はTwitterで、「これがどれほど辛いことか、言葉で表現できるかどうか分かりません。移行にどれだけの労力がかかるかはさておき、Gitは史上最悪のソフトウェアです。存在すべきではありませんでした。しかし、Gitは勝利を収めました。競合製品はすべて地球上から消滅したのです。」と嘆きました。®