1. タイトル

Git:「有料化にブチ切れた結果、世界標準」


2. イントロ(STAR形式)

2005年、Linux開発の現場が混乱に陥った。

長年使っていたバージョン管理ツール「BitKeeper」の無償提供が、突如打ち切られたのだ。

代替ツールを探しても、CVSもSVNも、どれも遅すぎる。世界最大のオープンソース開発が、たった一夜で道具を失った。

そのとき、リーナス・トーバルズはこう言い放った。

「必要なら、自分で作る」

そして2週間後、誕生したのがGit。

この「怒りの産物」が、15年後には世界中の開発者の共通言語になるなんて、誰が予想しただろう。


3. 歴史年表

出来事
2002 Linuxカーネル開発でBitKeeperを導入
2005 BitKeeper無償提供終了、リーナスがGitを開発
2008 GitHub登場、Gitの普及が加速
2010 GoogleやFacebookなどがGitに移行
2015 Gitが事実上の業界標準に
2020 GitHubがMicrosoft傘下に
2023 GitHub Copilot登場、AI時代のGit運用へ

4. 製作者と概略、最初に作られた年

  • 製作者:リーナス・トーバルズ
    • Linuxカーネルの生みの親。
    • 「自分が使いたいツールは自分で作る」という信念で、Gitを生み出した。
  • 最初に作られた年:2005年

5. 本文(ストーリー)

■ BitKeeperという「外部依存」

2002年、Linuxカーネル開発はBitKeeperの導入によって飛躍的に効率化された。

分散型の仕組みにより、世界中の開発者が同時に作業しても衝突は最小限。巨大なコードベースを捌くための唯一の武器だった。

しかし、その選択は「外部の商用ツールに依存する」というリスクをはらんでいた。

そして2005年、そのリスクは現実となる。BitKeeperの提供元BitMover社が、無償提供を突如打ち切ったのだ。

理由は、オープンソース開発者によるBitKeeperプロトコルの解析。これに激怒した創業者ラリー・マクヴォイは「無料で使いたければ、プロトコルに触るな」と警告。警告を無視した開発者が出たことで、ラリーは最終的に無償提供を撤回した。

Linuxカーネル開発チームは、一夜にしてツールを失った。

■ 代替ツールを探せ

混乱する開発者たち。

リーナスとチームは、急遽いくつかの候補を検討した。

  • CVS:90年代の王者。だが、巨大リポジトリではブランチひとつ作るだけで数分かかる。論外。
  • Subversion (SVN):CVSの改良版。中央サーバー依存のため、オフライン作業が不可能。これも使えない。
  • Monotone:分散型で理論的には優れていたが、致命的に遅い。Linuxカーネルには耐えられない。
  • Bazaar:Ubuntuが推す新興ツール。しかし当時は発展途上で、大規模開発には非現実的。

メーリングリストにはため息交じりの投稿が並んだ。

「SVNはカーネル開発向きじゃない」

「Monotoneは動くけど、遅すぎる」

「パッチメールに逆戻りか…?」

そのとき、リーナスは静かに結論を下した。

■ リーナスの決断

「必要なツールがないなら、自分で作る」

リーナスが掲げた要件は4つ。

  1. 高速であること
  2. 分散開発を前提とすること
  3. 信頼性が高いこと
  4. オープンソースであること(二度と外部に依存しないため)

こうして、Gitの開発が始まった。

■ 2週間で動くものができた

リーナスは驚異的なスピードでコードを書き上げた。

わずか2週間でプロトタイプが完成。メーリングリストには「ブランチ作成が一瞬」「パッチ適用が爆速」といった報告が次々に投稿され、開発者たちの目が輝いた。

ただし、初期のGitは「優しいツール」ではなかった。

  • コマンド体系は複雑
  • ドキュメントは最小限
  • UIは完全にエンジニア向け

それでも、圧倒的に速い。Linuxカーネル開発者たちは「不便でも速い方がいい」と判断し、次第にGitに移行していった。

同時期に誕生したMercurialも一部で支持されたが、後にGitHubの登場で勝敗は決する。

■ GitHubの登場で「爆発」

2008年、Gitの運命を変える存在が現れる。

GitHubだ。

それまでGitは「プロ級エンジニア向けの難しいツール」だったが、GitHubはそれをSNSのように変えた。

  • フォーク:ワンクリックでプロジェクトをコピー
  • プルリクエスト:ブラウザ上で提案とレビュー
  • スター:承認欲求を満たす「いいね」ボタン

このUI革命によって、GitはLinuxカーネルだけのものではなくなり、個人開発者やスタートアップに一気に広がった。

■ 現代のGit

今やGitはソフトウェア開発の共通言語だ。

Linux、Kubernetes、Chrome、AWSのサービスコードまで、あらゆる開発現場がGitの上で動いている。

そしてGitHubやGitLabとの組み合わせで、CI/CD、レビュー、セキュリティ管理まで含めた「開発のOS」となった。

# 例:Gitの基本操作
git clone https://github.com/torvalds/linux.git
git checkout -b feature-branch
git rebase main
git push origin feature-branch

かつてBitKeeperの喪失に追い込まれたLinuxコミュニティは、今や世界中の開発者に「Git」という武器を提供する側になった。

■ 裏話・トリビア

  • Gitの名前の由来:「Git」はイギリス英語で「嫌なやつ」。リーナス曰く「自分にぴったり」
  • BitKeeper騒動の後日談:BitKeeperのラリーは後に「リーナスの決断は正しかった」と語った。
  • 初期Gitの恐怖:「Gitを覚えるのに数日かかった。だが速すぎてやめられない」と当時の開発者は回顧している。

6. 現代での活用

  • GitHub, GitLab, Bitbucket などで標準採用
  • CI/CDとの連携(GitHub Actions, GitLab CI)
  • AWS CodeCommitもGit互換
  • GitHubの公開リポジトリ数は2023年時点で1億超

7. プロの虎の巻

  • git reflog:過去のHEAD履歴を全て確認、消えたコミットも蘇生可能
  • git bisect:バグを埋め込んだコミットを二分探索で特定
  • git config --global alias.co checkoutgit co でコマンド短縮

8. 結び

Gitは、怒りと必要性から生まれた。

「必要なら自分で作る」というリーナスの哲学は、いまや世界中の開発者の中で息づいている。

そしてその哲学は、BitKeeperに振り回されたあの日の教訓でもある。

One Reply to “Git:「有料化にブチ切れた結果、世界標準」”

Leave a comment

CAPTCHA